这个坑值得记一笔。商城站 sitemap 里有大量带排序、筛选参数的地址,同一件商品在文件里出现几十次,收录质量一直上不去,抓取预算也被吃光。
真正麻烦的地方在于,几个原因的现象几乎一样。生成逻辑直接取数据库里的全部链接,没有做去重;筛选参数组合几乎无限,蜘蛛抓到大量近似页面;canonical 没有统一指回主商品页,参数页被当成独立页面。
动手时先统计带参数的 URL 在文件里的占比
grep -c '?' sitemap.xml
然后在生成时只保留无参数地址
SELECT ID FROM wp_posts WHERE post_type='product' AND post_status='publish';
给参数页统一加 canonical
add_filter('wpseo_canonical', 'strip_query_canonical');
改之前先确认了最近有没有人动过配置,避免白查一遍。
改完先别撤,确认这几项。sitemap 条数减少七成,GSC 里重复网页的比例明显下降,主商品页的抓取频率反而提高。
补一句。直接在 robots 里封参数会连正常的追踪链接一起挡掉,优先用 canonical 收敛,实在收敛不了再禁抓。这类问题最好一次改到位,反复小改反而容易把原因搅混。