feat(products): refine page copy and retarget primary CTA to /services
产品列表页文案与转化打磨:Hero 改为「自研产品矩阵 × 数字化核心系统」并聚焦 价值主张;主 CTA 由预约接待改为「了解我们的服务」并落点到 /services(次 CTA 保持 /solutions 查看行业方案);CTA 区文案「以自研产品支撑数字化落地」+ 组合 方案入口改为 /solutions。同步更新集成测试断言。
This commit is contained in:
@@ -212,15 +212,15 @@ describe('ProductsContentV3 - 产品列表页集成测试', () => {
|
||||
const { default: ProductsContentV3 } = await import('./products-content-v3');
|
||||
render(<ProductsContentV3 products={allMockProducts} />);
|
||||
|
||||
expect(screen.getByText('用自研产品组合')).toBeInTheDocument();
|
||||
expect(screen.getByText('核心系统升级')).toBeInTheDocument();
|
||||
expect(screen.getByText('自研产品矩阵')).toBeInTheDocument();
|
||||
expect(screen.getByText('数字化核心系统')).toBeInTheDocument();
|
||||
});
|
||||
|
||||
it('should render hero description text', async () => {
|
||||
const { default: ProductsContentV3 } = await import('./products-content-v3');
|
||||
render(<ProductsContentV3 products={allMockProducts} />);
|
||||
|
||||
expect(screen.getByText(/从数据智能到业务协同/)).toBeInTheDocument();
|
||||
expect(screen.getByText(/从业务系统到数据智能/)).toBeInTheDocument();
|
||||
});
|
||||
|
||||
it('should render enterprise products section', async () => {
|
||||
@@ -305,8 +305,8 @@ describe('ProductsContentV3 - 产品列表页集成测试', () => {
|
||||
const { default: ProductsContentV3 } = await import('./products-content-v3');
|
||||
render(<ProductsContentV3 products={allMockProducts} />);
|
||||
|
||||
expect(screen.getByText('预约免费咨询')).toBeInTheDocument();
|
||||
expect(screen.getByText('浏览行业方案')).toBeInTheDocument();
|
||||
expect(screen.getByText('联系我们')).toBeInTheDocument();
|
||||
expect(screen.getByText('查看行业方案')).toBeInTheDocument();
|
||||
});
|
||||
|
||||
it('should render stats section with product count', async () => {
|
||||
@@ -323,7 +323,7 @@ describe('ProductsContentV3 - 产品列表页集成测试', () => {
|
||||
render(<ProductsContentV3 products={[]} />);
|
||||
|
||||
// Hero section should still render
|
||||
expect(screen.getByText('用自研产品组合')).toBeInTheDocument();
|
||||
expect(screen.getByText('自研产品矩阵')).toBeInTheDocument();
|
||||
|
||||
// The enterprise section should still render (even without products)
|
||||
expect(screen.getAllByText('企业套装').length).toBeGreaterThanOrEqual(1);
|
||||
|
||||
@@ -89,7 +89,7 @@ function HeroSection() {
|
||||
transition={{ duration: 1.2, delay: 0.15, ease: EASE_OUT }}
|
||||
className="text-4xl sm:text-5xl md:text-6xl lg:text-7xl font-bold text-ink leading-[0.92] tracking-tighter mb-8 sm:mb-10 md:mb-12"
|
||||
>
|
||||
<div className="block">用自研产品组合</div>
|
||||
<div className="block">自研产品矩阵</div>
|
||||
<div className="block mt-5">
|
||||
<span className="relative inline-block">
|
||||
<span className="text-brand font-extrabold">支撑企业</span>
|
||||
@@ -102,7 +102,7 @@ function HeroSection() {
|
||||
/>
|
||||
</span>
|
||||
</div>
|
||||
<div className="block mt-5">核心系统升级</div>
|
||||
<div className="block mt-5">数字化核心系统</div>
|
||||
</motion.h1>
|
||||
|
||||
<motion.p
|
||||
@@ -111,8 +111,8 @@ function HeroSection() {
|
||||
transition={{ duration: 1, delay: 0.45, ease: EASE_OUT }}
|
||||
className="text-lg sm:text-xl lg:text-2xl text-text-secondary max-w-2xl leading-relaxed mb-8 sm:mb-10 md:mb-12"
|
||||
>
|
||||
从数据智能到业务协同,每一款产品都经过实战验证。
|
||||
6 大核心产品互为补充,常以组合形式出现在行业解决方案中。
|
||||
从业务系统到数据智能,深度自研、互为补充。
|
||||
6 大企业套装与专业产品线,覆盖企业数字化核心场景。
|
||||
</motion.p>
|
||||
|
||||
<motion.div
|
||||
@@ -122,8 +122,8 @@ function HeroSection() {
|
||||
className="flex flex-wrap gap-6"
|
||||
>
|
||||
<Button size="xl" asChild>
|
||||
<a href="/contact">
|
||||
预约产品演示
|
||||
<a href="/services">
|
||||
了解我们的服务
|
||||
<ArrowRight className="w-5 h-5 ml-2" />
|
||||
</a>
|
||||
</Button>
|
||||
@@ -398,7 +398,7 @@ function SuiteCombosSection({ products }: { products: Product[] }) {
|
||||
return (
|
||||
<a
|
||||
key={idx}
|
||||
href="/contact"
|
||||
href="/solutions"
|
||||
className="group p-10 lg:p-12 bg-white hover:bg-bg-secondary transition-all duration-500 overflow-hidden"
|
||||
>
|
||||
<div>
|
||||
@@ -432,7 +432,7 @@ function SuiteCombosSection({ products }: { products: Product[] }) {
|
||||
whileHover={{ x: 6 }}
|
||||
transition={EASE_SPRING}
|
||||
>
|
||||
<span>咨询组合方案</span>
|
||||
<span>了解行业方案</span>
|
||||
<ArrowRight className="w-4 h-4" />
|
||||
</motion.div>
|
||||
</div>
|
||||
@@ -454,24 +454,24 @@ function CTASection() {
|
||||
<div className="max-w-container mx-auto px-6 lg:px-10 relative z-10">
|
||||
<ScrollReveal className="text-center max-w-3xl mx-auto">
|
||||
<h2 className="text-2xl sm:text-3xl md:text-4xl lg:text-5xl font-bold text-ink tracking-tight leading-tight mb-6 sm:mb-8">
|
||||
找到适合你的<br />
|
||||
<span className="text-brand">数字化方案</span>
|
||||
以<span className="text-brand">自研产品</span><br />
|
||||
支撑数字化落地
|
||||
</h2>
|
||||
|
||||
<p className="text-xl text-text-secondary mb-12 max-w-2xl mx-auto leading-relaxed">
|
||||
无论你是需要单一产品,还是完整的数字化转型方案,
|
||||
我们的专家团队都能为你量身定制最佳路径。
|
||||
从企业套装到专业产品,以自研能力与专业服务,
|
||||
陪伴企业完成数字化升级。
|
||||
</p>
|
||||
|
||||
<div className="flex flex-wrap justify-center gap-6">
|
||||
<Button size="xl" asChild>
|
||||
<a href="/contact">
|
||||
预约免费咨询
|
||||
<a href="/services">
|
||||
了解我们的服务
|
||||
<ArrowRight className="w-5 h-5 ml-2" />
|
||||
</a>
|
||||
</Button>
|
||||
<Button size="xl" variant="outline" asChild>
|
||||
<a href="/solutions">浏览行业方案</a>
|
||||
<a href="/contact">联系我们</a>
|
||||
</Button>
|
||||
</div>
|
||||
</ScrollReveal>
|
||||
|
||||
Reference in New Issue
Block a user