先把当时的情况摆出来。移动版页面为了控制长度,把正文后半段用 CSS 折叠起来,百度移动适配校验提示移动版内容与桌面版不一致,移动端收录量一直上不去。

真正麻烦的地方在于,几个原因的现象几乎一样。折叠内容设置 display:none,蜘蛛判定为不存在。另一种情况是移动模板只输出摘要,正文靠点击展开后再请求接口。

还有一种情况,分页在移动端被去掉,长文只保留第一页。另外,图片说明文字在移动端被整体隐藏。

上来先对比移动版与桌面版的正文长度

curl -s -A "Mozilla/5.0 (iPhone)" https://www.example.com/post-1024/ | measure -Line

然后确认折叠区域是否在 HTML 里

curl -s -A "Mozilla/5.0 (iPhone)" https://www.example.com/post-1024/ | findstr /i "display:none"

再往下改成默认展开、用 JS 收起的写法

echo '<div class="post-body">全文内容</div>';

等前面都确认过,再在移动端补回分页链接

curl -s -A "Mozilla/5.0 (iPhone)" https://www.example.com/post-1024/ | findstr /i "page/2"

别只看报错消失,验证要多做一步。正文改为默认输出后,移动版字数与桌面版一致,适配校验通过,移动端收录开始增长。

这里还有个坑。移动适配比对的是 HTML 里的内容,display:none 和接口加载都算缺失,折叠交互要在渲染后做。改动前把原配置备份一份,出问题能马上回滚,这比任何技巧都实用。

作者 9823189