Foreword
博客挂了这么多年,sitemap都没正经交给过Google。subtitle一直当关键词用,description基本没有。这次把Analytics和Search Console翻了一遍,能补的先补上,统计也增加了Cloudflare。
Search Console发现的问题
近三个月大概1720次点击,8.17万展示,CTR只有2.1%,平均排名15.6。谷歌收录了572篇,还有127篇没收录。
Search Console里交上去的sitemap居然是feed.xml,里面就11条最新文章。全站文章都靠Google自己爬。
流量这边,直达远多于搜索,搜索里Bing比Google还多一点。外链最多的是V2EX。
有几个词展示很多、基本没人点:Netch、CGTeamwork、CDN加速、凹包凸包、小米BE6500刷机。部分标题和搜索词对不上,不过我不打算改标题,增加一些description就行了
整改
sitemap和robots
加了sitemap.xml,Jekyll构建的时候自动生成。首页、普通页面、已经到日期的文章都会进去,404、offline不进,未来日期的文章也不会提前暴露。
robots.txt里Allow全站,把offline、pagefind、search-index挡掉,最后指到sitemap.xml。
feed.xml还是RSS,只放最新的,不做改动。
部署完去Search Console把sitemap.xml交上去,很简单,链接一提交就行了

如果链接有错的话,立马就会提示哪一行出问题了,直接改就好了
- 之前就有一个文章日期写到了95号,直接就报错了
相关文章
每篇下面本来就有上一篇下一篇,按时间排的。对读者翻页有用,对搜索来说关联不强,上一篇经常是完全不相干的东西,这种对于搜索或者可能的PV就不够友好。
目前按相同标签再挂最多3篇相关文章,放在上下一篇前面。相关文章进了侧边目录,点了可以跳转过去。

description
我一直把subtitle当搜索关键词,也当成页面描述用。其实Google吃的是meta description,subtitle只是文章头上那行小字。
所以每篇加了description字段。默认自己懒得写,构建时会从Foreword抽一段,抽不到再用subtitle。
然后对着Search Console里真实搜过来的词,用Agent把五百多篇都补了一遍,现在基本每篇都有description。
后续可以考虑加一个定期任务,每个月同步一遍搜索相关的关键词,补充到description

Open Graph
微信、Telegram、Twitter预览链接的时候,读的不是普通description,是og:title、og:description、og:image 这些标志,原来没有。
加在head.html里,文章用og:type article,其他页用website,图用每篇的header-img。
https://www.opengraph.xyz/
用opengraph检测还是会报问题。一个是他们自己卖「图上加字」的提示,可以无视。另一个是我的标题Banner图大多是1870×550的横幅,他们建议1200×630,对不上,不过我也不打算改这个标题图大小,就算了。
其他的问题是description词不够,中英文差别还是有点大,也可以无视,其他就没啥问题了

在不同APP里发我的blog链接,是不同的小卡片,还挺好看的

Cloudflare Web Analytics
由于百度不能收录我的网站,但是国内又能访问到,谷歌的Track国内加载又有问题,这种情况下最好找一个替代品。否则国内的流量其实都是bing带过来的,具体哪些词我是不知道的。
查了一下Cloudflare也有分析追踪,而国内对于Cloudflare是比较松的。

Cloudflare中选择Enable with JS Snippet installation 上面的选项是需要启用Proxy 域名代理才能用,不启用就和谷歌一样。
Cloudflare Web Analytics这次也加上了,footer.html加了新的追踪脚本。

过个几分钟就能看到追踪的结果了,后续和谷歌配合到一起使用
Summary
能整改的地方都先改了,看看后续我的流量等内容会不会有一些变化
Quote
https://developers.google.com/search/docs/crawling-indexing/sitemaps/overview
https://ogp.me/
https://www.opengraph.xyz/
https://developers.cloudflare.com/analytics/web-analytics/