问题出现得很突然,日志倒是留得挺全。sitemap 提交了 6 万条 URL,三个月后 GSC 里显示已编入索引的只有 8000 条,剩下的大多停在已发现未编入索引。
刚开始盯着「部分页面正文只有两三行,和标题几乎不构成有效内容」,折腾了半个多小时,排掉了。
这类报错背后常见的原因有几处,逐个排除就行。大量 URL 是标签与归档页,内容重复度高被判为低价值。少数情况下是站点抓取预算有限,sitemap 里重要的详情页排在了最后。
少数情况下是sitemap 的 lastmod 每周全量刷新,蜘蛛不再相信更新时间。
先按目录统计 sitemap 里的 URL 分布
curl -s https://www.example.com/sitemap.xml | grep -o '<loc>[^<]*' | cut -d/ -f4 | sort | uniq -c | sort -rn
接着把低价值目录从 sitemap 里剔除
grep -v -E '/(tag|date)/' sitemap_all.xml > sitemap_clean.xml
只保留有实质更新的页面并重修 lastmod
SELECT ID FROM wp_posts WHERE post_status='publish' AND LENGTH(post_content) > 800;
改完先别撤,确认这几项。把 sitemap 从 6 万条精简到 2.4 万条后,两个月内已编入索引从 8000 涨到 1.9 万,详情页的抓取占比明显提高。
提交量不等于收录量,sitemap 更应该当成优先级清单,塞进越多低质地址,重要页面的排队位置越靠后。改动前把原配置备份一份,出问题能马上回滚,这比任何技巧都实用。
