报错是这么冒出来的。主题的面包屑第一级直接输出 home_url(),锚文本显示成 https://www.example.com,全站几万个页面都一样。锚文本报告里首页的入口文字全是域名,品牌词排名一直不动。
中间走过弯路,把「与 logo 链接重复指向首页,两个入口抢同一个词」当成主因,改完现象没变。
这类报错背后常见的原因有几处,逐个排除就行。模板把 URL 当锚文本输出,没有用可读的首页名称。少数情况下是协议和 www 都带在文字里,锚文本长度和可读性都很差。
另外,全站锚文本完全一致,缺少品牌词之外的自然变体。
先抽查面包屑的输出
curl -s https://www.example.com/post/1/ | grep -A2 'breadcrumb' | head
再往下把锚文本改成首页
sed -i 's|<a href="'.*'">https://www.example.com</a>|<a href="/">首页</a>|' /var/www/html/inc/breadcrumb.php
接着确认全站不再输出域名文字
grep -rn 'home_url()</a>' /var/www/html/wp-content/themes/ | wc -l
复核首页的锚文本分布
https://search.google.com/search-console/links
恢复的判定其实很直接。面包屑第一级统一显示为首页,链接报告里域名形式的锚文本归零,品牌词排名在四周后开始回升。
锚文本写域名等于把最该给品牌词的位置浪费掉,改模板一行就够,但要在全站范围复验。报错文案容易误导,真正的原因往往在相邻那一层的日志里。
