把旧页内容复制进新模板后,表面文字相同并不等于输出相同。先做一次“结构对照”,再决定是继续迁移还是回退改模板;如果结构差异只出现在装饰层,可以保留新模板;如果差异落在标题层级、正文容器或链接可抓取性上,就应先修正模板再批量复制。
复制后最容易被忽略的,是模板把内容包进了不同的容器。装饰层差异包括间距、背景、边框、字体族变化,这类差异通常不影响页面主题表达。内容层差异则包括:正文被拆进多个并列区块、标题层级被模板改写、链接被脚本包裹、图片替代文本被模板统一覆盖。
判断依据不是“看起来像不像”,而是对照复制前后的结构。把旧页和新页的正文区分别保存为纯文本,再对比标题标签序列和链接地址序列。若标题序列一致、链接地址一致,只有包裹元素不同,可视为装饰层差异;若标题序列从<h2>变成<div>,或链接地址被替换为跳转参数,则属于内容层差异。
实际操作:在模板中固定一个正文容器,复制时只替换容器内部内容,不替换容器本身。这样做的结果是,后续批量复制时结构差异会被限制在同一组标签内,排查范围从整页缩小到容器内部,下一步只需检查容器内部的标题和链接。
条件一:新模板的正文容器允许保留原有标题层级和链接地址。此时可以继续迁移,但要在每个页面复制后做一次结构抽查,抽查对象是正文第一个标题、正文最后一个链接和正文中的图片替代文本。抽查通过,说明模板没有改写内容层,迁移可以按批次推进。
条件二:新模板会自动改写标题层级、给链接追加跳转参数,或把正文拆进多个区块。此时不应继续批量复制,而应先改模板。因为每复制一页,隐藏差异就多一层,后续回退成本高于先修模板。改模板的动作是:关闭自动标题改写、保留原始链接地址、让正文容器保持单一父级。改完后重新复制一页做对照,若标题序列和链接序列恢复一致,再继续迁移。
例外:如果差异只出现在页脚、侧栏或推荐区,而正文区结构一致,可以暂不改模板,先迁移正文,再单独处理这些区域。前提是这些区域不承载正文主题表达,也不影响用户从正文跳转到下一层内容。
复制后出现异常,不一定是模板造成的。常见混淆有三种:一是旧页本身就有结构问题,复制后只是被新模板暴露出来;二是新模板加载了额外脚本,改变了链接的可点击区域;三是复制时漏掉了旧页中的一段说明文字。
区分方法:取同一篇内容,分别放入旧模板和新模板,各保存一份纯文本和一份链接清单。对比两份纯文本,若文字一致而链接清单不同,问题在模板;若文字不一致,问题在复制动作;若文字和链接都一致,但页面表现不同,问题在模板的样式或脚本层。这个对照不依赖主观判断,只依赖两份可核对的输出。
假设例子:某篇旧页正文有三级标题,复制到新模板后,三级标题在纯文本中仍然存在,但链接清单里少了两个站内链接。此时不能直接断定模板删链接,还要检查复制时是否漏选了包含链接的段落。若重新复制后链接恢复,说明是复制动作问题;若重新复制后仍然缺失,才回到模板层排查。
<h3>改成<strong>,标题层级就断了,后续内容分段也会跟着变。这三个位置检查完,再决定是否继续复制下一页。若三项都通过,可以继续;若有一项不通过,先修模板或修正复制动作,不要带着已知差异批量推进。
复制到新模板后,页面表现变化可能来自模板,也可能来自搜索需求变化、季节因素或数据采集差异。比较时不要只看单日数据,也不要把一次改动前后的波动直接归因于模板。更稳妥的做法是:保留一份未迁移的旧页作为对照,同时观察迁移页和对照页。若迁移页变化而对照页同步变化,模板之外的因素更值得怀疑;若迁移页变化而对照页稳定,模板差异更值得优先排查。
动作上,先完成结构对照,再决定是否继续迁移。结构对照通过,下一步是批量复制并抽查;结构对照不通过,下一步是回退到模板修改,而不是继续复制。这个顺序能避免把隐藏差异带入更多页面,也能让后续比较有可核对的基线。