diff --git a/cms/server/src/seed.js b/cms/server/src/seed.js index 407384b..62b90fd 100644 --- a/cms/server/src/seed.js +++ b/cms/server/src/seed.js @@ -117,6 +117,9 @@ const siteTexts = [ ['footer.navigation_title', '页脚导航标题', '网站导航'], ['footer.action_title', '页脚行动入口标题', '行动入口'], ['footer.copyright', '页脚版权信息', '© 2026 成都阿美巴企业管理咨询有限公司 | aiameiba.com · ameiba.cn'], + ['footer.qr_title', '页脚二维码区域标题', '关注我们'], + ['footer.xcx_qr_label', '页脚微信小程序二维码标签', '微信小程序'], + ['footer.fwh_qr_label', '页脚微信服务号二维码标签', '微信服务号'], ['evolution.header_title', '企业进化页标题', '企业进化'], ['evolution.header_description', '企业进化页头部说明', '内部顺序强制:企业进化思想 → 四大价值坐标 → A/M/B 状态坐标,顺序不可调换。'], ['evolution.header_note', '企业进化页头部补充', '从进化思想到价值坐标,再到状态坐标,逐层看清企业位置。'], diff --git a/public/images/fwh.jpg b/public/images/fwh.jpg new file mode 100644 index 0000000..98b6c57 Binary files /dev/null and b/public/images/fwh.jpg differ diff --git a/public/images/xcx.jpg b/public/images/xcx.jpg new file mode 100644 index 0000000..b29f92b Binary files /dev/null and b/public/images/xcx.jpg differ diff --git a/src/components/Layout/Footer.tsx b/src/components/Layout/Footer.tsx index 636fa07..791162b 100644 --- a/src/components/Layout/Footer.tsx +++ b/src/components/Layout/Footer.tsx @@ -42,6 +42,19 @@ export default function Footer() { {config?.contact_email && {config.contact_email}}

} +
+

{texts['footer.qr_title'] || '关注我们'}

+
+
+ {texts['footer.xcx_qr_label'] +
{texts['footer.xcx_qr_label'] || '微信小程序'}
+
+
+ {texts['footer.fwh_qr_label'] +
{texts['footer.fwh_qr_label'] || '微信服务号'}
+
+
+

{texts['footer.copyright'] || '© 2026 成都阿美巴企业管理咨询有限公司 | aiameiba.com · ameiba.cn'}

diff --git a/src/components/Layout/layout.css b/src/components/Layout/layout.css index d5999ab..f9e74cf 100644 --- a/src/components/Layout/layout.css +++ b/src/components/Layout/layout.css @@ -56,7 +56,7 @@ padding: 48px 0 24px; margin-top: 0; } -.footer-grid { display: grid; grid-template-columns: 1.6fr 0.8fr 0.8fr; gap: 32px; } +.footer-grid { display: grid; grid-template-columns: 1.45fr 0.72fr 0.86fr 1.15fr; gap: 28px; } .footer-brand { color: #fff; font-weight: 800; margin-bottom: 10px; } .footer-desc { font-size: 13px; line-height: 1.7; color: #94a3b8; } .footer-note { color: #f59e0b; } @@ -79,6 +79,10 @@ .footer-bottom a { color: #94a3b8; } .footer-contact-link { color: #94a3b8; } .footer-contact-link:hover { color: #fff; } +.footer-qr-list { display: flex; gap: 12px; } +.footer-qr figure { margin: 0; text-align: center; } +.footer-qr img { width: 96px; height: 96px; object-fit: cover; background: #fff; border-radius: 6px; padding: 3px; } +.footer-qr figcaption { color: #94a3b8; font-size: 12px; margin-top: 6px; } @media (max-width: 960px) { .nav-menu, .nav-resident { @@ -106,4 +110,6 @@ .mobile-nav-actions .btn { width: 100%; min-height: 44px; } .hamburger { display: flex; } .footer-grid { grid-template-columns: 1fr; } + .footer-qr-list { gap: 16px; } + .footer-qr img { width: 112px; height: 112px; } }