把旧页复制进新模板后,肉眼检查常常看不出问题,但搜索表现可能慢慢变化。隐藏差异通常来自两类原因:一类是内容真正变了,比如正文被截断、结构化数据丢失;另一类是内容没变,只是渲染、链接或抓取路径变了。区分这两类,决定了你下一步该改内容还是改模板。
旧页迁移到新模板后,最容易出现的矛盾是:浏览器里显示的文字、图片、标题几乎没变,但页面在搜索结果中的摘要、面包屑或跳转链接却和以前不一样。这时不要急着改正文,因为“看起来一样”只代表视觉层一致,不代表机器读取到的内容一致。
一个合理的假设是:新模板把部分正文放进了需要脚本执行后才出现的位置,或者把原来的静态链接改成了事件绑定。另一个假设是:模板本身没问题,差异来自旧页和新页所处的目录、参数或内链位置不同。两种解释对应的动作完全不同,前者要改渲染方式,后者要改链接和路径策略。
要判断是内容差异还是路径差异,最直接的动作是把同一页面的“原始响应”和“渲染后结果”分别保存下来,再逐项对照。假设你有一个旧页 A,复制到新模板后得到页面 B,可以这样操作:
如果原始 HTML 里正文缺失,但渲染后出现,说明差异主要在渲染路径;如果渲染后正文仍然缺失,说明模板在输出内容时就丢了东西。这个动作的结果会直接影响下一步:前者要检查模板是否把内容交给了脚本生成,后者要检查模板字段映射和截断规则。
旧页里一个普通的 <a href="/old-path">,复制到新模板后可能变成 <a href="#" data-url="/old-path">,或者被替换成相对路径、带跟踪参数的路径。视觉上链接还在,但机器读取到的目标可能变了。判断方法很简单:在禁用 JavaScript 的状态下,检查页面 B 中所有内部链接的 href 是否仍然指向旧页对应的目标。
如果发现链接目标变了,先不要批量修改模板。可以抽 5 到 10 个有代表性的页面,记录修改前后的链接目标,再观察这些页面在后续抓取中的表现。这里要注意,抓取量或请求量的变化不能单独证明链接改对了,因为季节、搜索需求变化、数据采集差异都可能带来波动。更稳妥的做法是同时保留旧页和新页的链接对照表,等下一轮抓取数据出来后再判断。
新模板常常只负责展示,不负责输出旧页原有的结构化数据、canonical 或 hreflang。复制后如果这些标签没有跟着迁移,页面看起来完全正常,但机器读到的信息已经变了。检查时不要只看页面源代码里有没有这些标签,还要确认它们的值是否指向正确的对象。
假设旧页有一个指向自身的 canonical,复制到新模板后变成了指向栏目页。这个差异不会影响用户浏览,但会影响后续的页面归组判断。发现这类差异后,下一步不是立刻改模板,而是先列出所有需要保留的元信息字段,再和模板输出字段做一次映射对照。映射不上的字段,才是需要优先处理的部分。
如果对照后发现差异只出现在展示层,正文、链接目标和元信息都能在新模板中完整保留,那么可以继续使用新模板,只需修复渲染或字段映射问题。如果差异涉及正文大面积丢失、链接目标不可恢复,或者旧页本身已经不再符合当前业务方向,那么让旧页退出、只保留仍然有价值的部分,可能比强行修复更合理。
判断依据不是“新模板看起来更好”,而是对照结果:哪些内容在新模板中无法稳定输出,哪些链接无法保留,哪些元信息无法映射。把这些无法保留的部分列出来,再决定是修复模板、调整内容,还是让旧页退出。这个顺序能避免在模板问题上反复修改内容,也能避免把仍然有价值的部分一起丢掉。