先给一个有条件的结论:如果换模板前后页面字段与区块数量一一对应,那么逐个模板文件比对HTML结构就能发现溢出与缺项;但一旦新模板合并了字段、或把正文区改成可拖拽区块,纯结构比对就会失效,必须改用渲染后的可见文本与字段清单交叉核对。下面把这两种情形分开说,并给出一个能立刻执行的动作。
快速网站建设常用一套模板套多个栏目,模板里往往写死了标题长度、摘要字数、图片数量和自定义字段的调用位置。换模板后,如果新模板把原来分开的“副标题”和“摘要”合并成一个富文本区,旧内容里的副标题字段就没有对应输出位置。此时用文本比对工具看模板文件,只会看到标签数量变了,却看不出究竟哪条内容丢了。
更麻烦的是溢出。旧模板允许标题两行显示,新模板用固定高度容器加overflow:hidden,超出的字被裁掉但DOM里还在。结构比对认为字段存在,实际读者看不到后半句。这类问题只能靠渲染结果判断,不能靠源码。
可行的做法是准备两份材料:一份是内容侧导出的字段清单(每条记录有哪些字段、字段值长度),一份是新模板在各断点下的整页截图。核对时按下面顺序走:
这个动作的结果会直接决定下一步:如果溢出集中在标题和摘要,通常只需调整模板的截断规则或行数限制;如果缺项出现在自定义字段,说明新模板没有对应输出位置,要么补模板调用,要么把该字段内容迁移进保留的富文本区。两者处理成本差很多,先分清再动手。
假设某站有“产品名”和“一句话卖点”两个字段,旧模板分别输出在标题和副标题位置。新模板只保留一个标题区。抽查十条记录后发现,页面标题只显示产品名,卖点全部消失,而字段清单里卖点仍有值。这就是缺项,不是溢出,因为字符根本没进入渲染结果。反过来,如果标题区显示了“产品名+卖点”但末尾被省略号截断,那就是溢出,数据还在,只是展示空间不够。两种情况的修复方向完全不同,判断依据是渲染结果里有没有出现该字段的字符,而不是模板文件里有没有对应标签。
当模板使用懒加载或按需渲染时,首屏截图可能看不到折叠区以下的内容,此时“缺项”可能是尚未触发渲染,而不是真的丢失。另一个反例是内容本身为空:如果某条记录的卖点字段原本就没填,页面上不显示属于正常,不能算模板缺项。遇到这两种情况,先手动触发展开或滚动到底,再确认数据层是否有值,否则会把正常状态误判成模板问题,导致不必要的模板返工。
完成一轮核对后,把每条疑似问题的字段名、内容类型、可见字符数差值和判断结论写进一份对照记录,交给负责模板调整的人。记录里注明抽查的是哪几条记录、在哪个断点下观察,这样改完后可以用同一批记录复测。如果复测显示溢出减少而缺项未变,说明只修了展示层,字段调用还没补上,需要继续处理模板输出逻辑,而不是重复调整样式。