Favicon Tools检测创建
WordPress · Not updating

WordPress favicon 不更新?这样修复

你设了一个新 Site Icon,旧的却不肯走。在 WordPress 上,那几乎总是某个缓存层(一个页面缓存插件或提供陈旧 HTML 的 CDN),浏览器自己的 favicon 缓存则是第二嫌疑。

读 cropped- 文件名,判断是哪个缓存

查看源代码,找到图标 link。它的文件名以 cropped- 开头,并带有你上传文件的名字。如果它指向新附件,说明 HTML 是对的,你面对的是浏览器里被缓存的 favicon。如果它仍然写着旧附件的名字,那就是你的页面缓存或 CDN 在提供陈旧的 HTML。

这一个检查就能把问题干净地一分为二:文件名对,就清浏览器;文件名错,就清页面缓存。

清对那一层

  1. 1

    清除页面缓存和 CDN

    如果 cropped- 文件名是陈旧的,就刷新你的缓存插件(WP Rocket、W3 Total Cache、LiteSpeed)以及前面的任何 CDN,让带有新图标 link 的新鲜 HTML 被提供出来。

  2. 2

    在无痕窗口里加载站点

    如果文件名已经是新的,那就是浏览器缓存了 favicon。一个无痕窗口或另一个配置文件会显示真相。

  3. 3

    排除主题覆盖

    一个输出自己图标标签的主题可能盖过核心程序。如果两层缓存都清了、错误图标仍然存在,就数一数源代码里的 rel=icon 标签。

WordPress favicon 不更新:常见问题

我改了 Site Icon,标签页却显示旧的。

查看源代码,检查图标 link 里的 cropped- 文件名。如果它指向新附件,说明 HTML 没问题,是被缓存的 favicon:清浏览器。如果它指向旧的,那就是你的页面缓存或 CDN 陈旧了。

WordPress 上涉及哪些缓存?

最多三层:一个页面缓存插件、站点前面的一个 CDN,以及浏览器自己的 favicon 缓存。源代码里的 cropped- 文件名会告诉你该清服务端缓存还是浏览器。

我还需要在根目录放一个 favicon.ico 吗?

浏览器读的是 link 标签,所以不需要,但有些 feed 阅读器和爬虫会按路径请求 /favicon.ico、从不读你的 HTML,所以在域名根路径放一个文件是一层廉价的保险。

Keep going