帮助首页 > 网站更新修复说明 · 功能改造与设计方案 > 主页整改-商家页底部改造方案

主页整改-商家页底部改造方案

主页整改:商家页底部(Footer)改造方案

目标

按需求完成两件事:

  1. 商家详情相关页面不再使用全站底部 themes/default/Home/public/footer.html,而是使用商家底部模板 themes/default/Home/shop/shop_footer.html(需求里写的是 shop_footer.htm,项目内实际文件为 shop_footer.html)。
  2. 将原全站底部的这一块信息(“联系我们 / 公司信息 / 公司合作 / 用户帮助”)在商家页全部替换为“商家信息版展示”,要求不出现站点通用信息(如固定客服电话、免费长途、站点服务协议等),改为展示当前商家的联系方式/地址/营业时间/公司类型,以及商家相关功能入口(如认领、预约、收藏、AI 等)。
说明:商家页判断口径为 ThinkPHP 模板中的 $ctl eq 'shop' 且页面已注入 $detail(含 shop_id)。

现状梳理

1) 全站底部模板

  • 文件themes/default/Home/public/footer.html
  • 内容:包含你描述的四列信息块(联系我们、公司信息、公司合作、用户帮助)以及右侧二维码、版权、回到顶部等。

2) 商家页“底部模块”模板

  • 文件themes/default/Home/shop/shop_footer.html
  • 当前包含:公司地图(百度地图脚本)、公司二维码、预约弹窗等(以及我们后续将追加“商家信息版 footer 信息块”)。
  • 引用位置:各商家详情子页均 <include file="shop:shop_footer"/>,但很多页面同时又 <include file="public:footer"/>,导致商家页底部出现两套。

改造方案(推荐实现)

A. 商家页改为只引入 shop_footer

A1. 修改点

  • themes/default/Home/shop/*.html 中:

- 对于商家详情/子页(有 $detail 的页面):删除或替换底部的 <include file="public:footer"/>,只保留 <include file="shop:shop_footer"/>

- 对于商家列表页(如 themes/default/Home/shop/index.html):保持使用 public:footer,不改为 shop_footer

A2. 为什么列表页不改

shop_footer.html 依赖 $detail/$ex 等商家详情变量,并包含地图/二维码/预约等组件;列表页没有这些变量,强行 include 会导致:

  • 变量为空导致页面展示异常
  • 或出现模板/JS 依赖错误

因此列表页继续用 public:footer 更安全。


B. 在 shop_footer.html 内新增“商家信息版 footer 信息块”

B1. 要替换的“信息块范围”

按需求,这一块替换为“商家信息版”,不再沿用站点通用文案。推荐按列组织为:

  • 联系我们(商家)

- 联系电话:优先 detail.mobile,其次 detail.tel

- 公司地址:detail.addr

- 营业时间:ex.business_time

- 在线客服:优先使用商家 detail.qq(QQ 咨询链接),无则显示“暂无”

  • 公司信息(商家相关入口)

- 关于我们(shop/about

- 公司主页(shop/detail

- 人才招聘(shop/tender

- 相册(shop/photo

  • 商家服务(替代“公司合作/入驻”等站点项)

- 公司类型:从 Shopgrade.grade_name 获取

- 认领公司:detail.recognition==0 时提供“认领公司”入口

- AI助手:shop/ai

- 加入收藏:shop/favorites

  • 更多入口(替代“用户帮助/协议”等站点项)

- 我要点评:shop/ping

- 我要预约:shop/yuyue2

- 返回公司首页:shop/detail

B2. 字段与链接映射(商家维度)

  • 关于我们shop/about?shop_id={detail.shop_id}
  • 联系我们shop/detail?shop_id={detail.shop_id}(或将来新增专门的联系页)
  • 人才招聘shop/tender?shop_id={detail.shop_id}
  • 免责声明:暂用站点系统文章 home/article/system?content_id=6
  • 广告合作:暂用站点系统文章 home/article/system?content_id=5
  • 公司后台merchant/login/index(保持现有)
  • 服务协议:站点系统文章(当前项目用 content_id=2
  • 退款承诺:当前项目为 /(若后续有专页再替换)

B3. 站点项替换原则

  • 任何“站点通用”入口(公司入驻、广告合作、服务协议、退款承诺等)在商家页底部不再出现
  • 统一替换为商家维度信息与入口:

- 信息类:电话/地址/营业时间/公司类型

- 行为类:认领/预约/收藏/AI/点评/返回公司主页


修改清单(文件级)

必改

  1. themes/default/Home/shop/shop_footer.html

- 追加“商家信息版 footer 信息块”

- 保持原地图/二维码/预约弹窗不受影响(除非你后续要求删除地图块)

  1. 商家详情子页模板(删除 public:footer

- themes/default/Home/shop/detail.html

- themes/default/Home/shop/about.html

- themes/default/Home/shop/coupon.html

- themes/default/Home/shop/goods.html

- themes/default/Home/shop/news.html

- themes/default/Home/shop/ping.html

- themes/default/Home/shop/photo.html

- themes/default/Home/shop/tuan.html

- themes/default/Home/shop/tender.html(若存在同样 footer 结构)

- themes/default/Home/shop/worker.html(若存在同样 footer 结构)

- themes/default/Home/shop/ai.html(需要把 public:footer 改为 shop:shop_footer

不改(保持全站 footer)

  • themes/default/Home/shop/index.html(公司列表页)

不建议做的事情(容易误伤)

  • 不要把 themes/default/Home/public/footer.html “整个替换成 shop_footer.html”,因为它是全站入口,会影响非商家频道页面。

风险与注意事项

  1. 重复 footer:必须确保商家子页底部只保留一个 include(shop:shop_footer)。
  2. 变量依赖shop_footer.html 依赖 $detail/$ex/$CONFIG,仅用于商家详情页安全。
  3. 缓存/编译模板:线上可能存在 .rpk/runtime 缓存,发布后需清理模板缓存或强刷。
  4. 样式一致性:复用 footer-theme.css,但若 shop_footer 页面已在上层引入样式,需避免重复加载引起覆盖(可接受,影响很小)。

验证清单(上线前后)

  1. 打开 shop/detail/shop_id/{id}.html

- 页面底部只出现一套 footer 信息块

- 文案为你给的“客服电话 05504988811 …”

  1. 打开 shop/about / shop/news / shop/goods / shop/ai 等子页

- 同样只出现商家版 footer 信息块

  1. 打开 shop/index(公司列表)

- 仍是全站 footer(不受影响)

  1. 验证“公司入驻”关闭时

- 显示“公司类型:xxx”


回滚方案

  1. 恢复各商家子页末尾的 <include file="public:footer"/>
  2. shop_footer.html 中移除新增的“商家信息版 footer 信息块”
copyright 2013-2113 www.baoanfuwu.cn All Rights Reserved 保安服务网版权所有
皖ICP备2021016109号-1