直接回答:把旧页和新模板页分别渲染成最终DOM,再按“可见文本、链接目标、结构化数据、资源请求”四层做逐项对比,而不是只看浏览器里像不像。常规做法失效,通常是因为对比的是源码或截图,而隐藏差异出现在渲染后、由脚本或模板条件补上的部分。
把旧页内容复制进新模板后,页面看起来完整,标题、正文、图片都在,但抓取或点击行为出现偏差。常见矛盾是:编辑器里文本一致,最终输出的链接、标题层级或结构化数据却不同。此时有两个合理解释。
这两种解释指向不同动作,先区分再修,能避免把模板问题当成内容问题反复改。
能区分它们的关键证据,是对比“渲染后DOM”和“原始粘贴内容”。如果两边渲染后的可见文本、链接、标题层级完全一致,只是源码结构不同,偏向解释二;如果渲染后出现旧页没有的区块、链接或属性,偏向解释一。
具体动作:在浏览器开发者工具中分别对旧页和新模板页执行同一段提取脚本,输出标题层级、链接地址、图片地址和结构化数据。假设旧页正文有3个二级标题,新模板页渲染后只剩1个,且多出一个“相关推荐”模块,那么差异来自模板条件渲染,下一步应检查模板的栏目判断和区块开关,而不是继续清理正文。
<a>的href,比较是否出现相对路径变绝对路径、参数丢失或指向模板首页。<script type="application/ld+json">是否存在、字段是否被模板覆盖。复制正文时,旧页的结构化数据常不会跟着走。每层只记录差异项,不急着改。记录完成后,按“影响点击和抓取”的优先级处理:链接目标错误优先,其次是结构化数据缺失,最后是样式和多余容器。
假设某页从旧模板复制到新模板后,搜索摘要显示的是模板默认描述,而不是正文首段。常规做法是反复修改正文首段,但没有变化。此时检查渲染后DOM,发现新模板在<head>中固定输出了一段描述,正文首段并未参与。这个证据说明差异在模板输出层,不在正文。下一步动作是调整模板的描述输出条件,或为该页单独指定描述字段。改动后再次对比渲染后DOM,确认描述来源已切换,再观察抓取和展示变化。注意,一次改动前后比较要考虑季节、搜索需求变化和数据采集差异,不能把短期波动直接归因于这次修改。
当四层对比中,可见文本、链接目标、结构化数据和关键资源请求都与旧页一致,且模板没有额外输出影响点击的区块时,可以停止。若仍有差异,但差异只涉及视觉样式、不影响文本和链接,可以记录后暂缓。不要因为某次抓取量或请求量暂时归零就断定处理正确,采集延迟、缓存和访问限制都可能造成同样现象。真正可复用的判断依据,是你能指出差异出现在哪一层,以及下一次改动会改变哪一层。