记录一下那天晚上的排查过程。运营给商品图统一加了火焰、对勾、箭头这类符号做装饰,alt 里一半是符号,图片搜索的展现掉了七成,GSC 也没报错,只是图不出现了。

刚开始盯着「图片文件名是数字,alt 又无效,等于没有任何线索」,折腾了半个多小时,排掉了。

原因不止一个,得分开看。alt 的文本被符号占满,可读描述只剩一两个字。还有一种是同一段符号模板套在几百张图上,被判成重复描述。

另外,装饰图也写了 alt,真正的信息图反而没写。

上来先抽样看 alt 的实际内容

curl -s https://www.example.com/goods/1/ | grep -o 'alt=[^ >]*' | head

然后统计重复 alt 的出现次数

grep -rho 'alt="[^"]*"' . | sort | uniq -c | sort -rn | head

接着把符号去掉改成具体描述

UPDATE wp_postmeta SET meta_value='银色不锈钢保温杯 500ml' WHERE post_id=123 AND meta_key='_wp_attachment_image_alt';

装饰图统一置空 alt

add_filter('wp_get_attachment_image_attributes', 'strip_deco_alt');

改完先别撤,确认这几项。信息图的 alt 变成具体描述,重复 alt 的条目从几百条降到个位数,图片搜索的展现四周内回到原水平。

这里还有个坑。符号不产生语义,alt 要写画面里有什么,装饰性图片留空反而更规范。报错文案容易误导,真正的原因往往在相邻那一层的日志里。

作者 9823189