换模板后出现“页面变长、板块错位、有些栏目像被吞掉”并不一定说明内容真的丢了。更常见的情况是:旧内容仍在数据库里,但新模板的字段映射或容器宽度变了,导致一部分内容溢出到不该出现的位置,另一部分因为缺少对应输出位置而没有被渲染。要区分这两类问题,先不要急着删改内容,而是把“数据是否存在”和“模板是否输出”分开核对。
溢出和缺项在视觉上都表现为“内容不对”,但成因不同。溢出的典型特征是:正文、图片或表格仍然出现在页面上,只是撑破容器、压住侧栏、在移动端横向滚动。缺项的典型特征是:标题还在,正文、图集、附件或参数区整块消失。
区分方法很直接:打开后台编辑该条内容,确认字段里是否还有完整数据。如果后台有、前台没有,优先怀疑模板缺少对应输出;如果后台有、前台也有但位置错乱,优先怀疑样式容器或字段长度限制。这个动作的结果会决定下一步:前者要补模板输出逻辑,后者要调布局和截断规则,两者不能混着改。
只盯着首页或栏目页,很容易误判。建议按下面三个位置交叉看:
如果三个位置表现不一致,说明问题集中在某一层模板,而不是全站数据损坏。此时应优先修那一层模板,不要全站批量重发内容。
一个常见矛盾是:换模板后页面看起来“少了很多东西”,但后台内容数量没变。对此通常有两种解释。
解释一:新模板只输出了部分字段。旧模板可能调用了自定义字段、副标题、来源、附件等,新模板只保留标题和正文。证据是:在详情页源码或页面可见区域中,某些字段完全不存在,且后台仍有值。若是这种原因,补回字段调用即可,内容本身不需要重录。
解释二:内容仍在,但被样式裁切或覆盖。证据是:用浏览器开发者工具查看该区域时,元素存在但高度为 0、被 overflow:hidden 裁掉,或被绝对定位模块盖住。此时要改的是容器高度、定位层级或响应式断点,而不是补内容。
还有一种容易被忽略的情况:旧内容使用了旧编辑器的短代码或自定义标签,新模板不再解析。它的证据是页面上直接出现方括号标记或空白占位。这类问题既不是溢出也不是缺项,而是解析规则变化,需要单独处理。
识别清楚后,处理顺序会影响返工量。建议按以下顺序执行:
这个顺序的关键是:先让内容可见,再让布局正常。反过来先调样式,可能把本来只是没输出的字段误判为不需要,从而在模板里永久删掉。
假设某次换模板后,多个栏目页只剩标题,摘要和缩略图都不见了,但详情页正常。此时不要直接判定“摘要字段被清空”。更合理的排查是:
假设最终确认是列表模板漏掉了摘要调用,那么修复动作是补回该字段输出,并只刷新一个栏目页验证。验证通过后再处理其他栏目;若验证不通过,说明还有第二层原因,应回到源数据与模板输出对照,而不是继续批量改内容。
模板更换后,最稳妥的做法不是凭肉眼判断,而是建立一张对照清单:每条内容有哪些字段、哪些字段应在哪些页面出现、当前是否出现、出现在什么位置。清单里只要出现“后台有、前台无”,就归入缺项;出现“前台有、位置错”,就归入溢出。两类问题分开处理,才能避免把仍然有价值的内容误删,也避免在样式上反复返工。
如果旧系统或旧合作关系正在退出,保留内容的判断标准也应回到这张清单:能被新模板正确输出的部分优先保留,无法解析且无替代价值的部分再考虑清理。这样处理完一轮后,下一步无论是继续调模板还是迁移内容,都有明确依据。