现场是这样的。文章开头用了双星号加粗,自动摘要把前一百五十字原样截出来,搜索结果里显示成一串星号夹着文字,同批词的点击率掉了一半。
中间走过弯路,把「手写描述时把加粗符号一起粘了进去」当成主因,改完现象没变。
真正麻烦的地方在于,几个原因的现象几乎一样。摘要取的是 markdown 源码而不是渲染后的纯文本;编辑器保存时没有把标记转成 HTML;模板输出前没有做符号清理。
先看页面的描述实际内容
curl -s https://www.lu0.cn/1.html | grep -o '<meta name="description"[^>]*>'
摘要生成时先剥掉标记符号
desc = re.sub(r'[*_`#]', '', raw)[:150]
批量清理存量描述里的星号
wp db query "UPDATE wp_postmeta SET meta_value=REPLACE(meta_value,'**','') WHERE meta_key='_yoast_wpseo_metadesc';"
剩下的就是抽查十条结果的展示效果
怎么算真的好了,看的是同一批现象。搜索结果里的描述变成通顺句子,同一批词的点击率一周内回升两成,星号残留的条目清零。
这里还有个坑。描述属于纯文本字段,任何格式符号都会原样展示,写的时候当成短信来写就对了。同一份配置在测试环境跑通,不代表线上没事,两边的默认值经常不一样。
