<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Emoji on Foam 的博客</title>
    <link>https://blog.foamzou.com/tags/emoji/</link>
    <description>Recent content in Emoji on Foam 的博客</description>
    <generator>Hugo</generator>
    <language>zh-cn</language>
    <lastBuildDate>Sat, 20 Nov 2021 16:28:50 +0800</lastBuildDate>
    <atom:link href="https://blog.foamzou.com/tags/emoji/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>优化 WordPress emoji (s.w.org) 速度</title>
      <link>https://blog.foamzou.com/posts/wordpress-emoji-s-w-org/</link>
      <pubDate>Sat, 20 Nov 2021 16:28:50 +0800</pubDate>
      <guid>https://blog.foamzou.com/posts/wordpress-emoji-s-w-org/</guid>
      <description>&lt;h2 id=&#34;怎么可以这么慢&#34;&gt;怎么可以这么慢&lt;/h2&gt;
&lt;p&gt;今天给我的博客加了 CDN ，绝大部分文件都很快被加载。唯独有一片 emoji 文件列表响应在 400+ ms，怎么能忍。&lt;/p&gt;
&lt;p&gt;&lt;img loading=&#34;lazy&#34; src=&#34;https://blog.foamzou.com/posts/wordpress-emoji-s-w-org/image-1.png&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;官方的-emoji-built-in-方案成了负担&#34;&gt;官方的 emoji built-in 方案成了负担&lt;/h2&gt;
&lt;p&gt;貌似从 4.2 版本开始，WordPress 官方提供 emoji 的自支持方案。详细可查看 《&lt;a href=&#34;https://facetwp.com/wordpress-4-2-emoji-performance/&#34;&gt;WordPress 4.2 Emoji Performance&lt;/a&gt;》，这篇文章分析了官方方案的原理和弊端。&lt;/p&gt;
&lt;p&gt;WordPress 的 js 脚本会把 html 中的 emoji code 替换成 WordPress 站点的 emoji 图片。目的应该是为了让那些尚不支持 emoji 的网站能够正常展示 emoji。&lt;/p&gt;
&lt;p&gt;就我看来，这更多是自作多情了，毕竟现代浏览器还有多少是不支持 emoji 的？另外，这个方案是一刀切的，不管当前浏览器是否支持 emoji 都自动 fallback 到它的 build-in 方案。&lt;/p&gt;
&lt;p&gt;这给浏览器带来了额外的网络请求，增大了网页的加载速率。在一些无法很好访问 s.w.org 站点的地区，更是直接被暴击。&lt;/p&gt;
&lt;p&gt;不清楚 WordPress 后面的版本是否有做优化，anyway，让我们来干掉它吧。&lt;/p&gt;
&lt;h2 id=&#34;解决方案&#34;&gt;解决方案&lt;/h2&gt;
&lt;h3 id=&#34;方案一直接禁用推荐&#34;&gt;方案一：直接禁用（推荐）&lt;/h3&gt;
&lt;p&gt;本博客采用了这个方案，因为我不需要照顾 不支持 emoji 的浏览器用户。&lt;/p&gt;
&lt;p&gt;下载这个插件（&lt;a href=&#34;https://wordpress.org/plugins/disable-emojis/&#34;&gt;disable-emojis&lt;/a&gt;）, 上传到 &lt;code&gt;/wp-content/plugins/&lt;/code&gt; 目录下，解压。到你的 plugin 管理后台，启用它即可。&lt;/p&gt;
&lt;p&gt;世界瞬间清爽了，浏览器直接渲染 emoji ，再也不需要另外去请求网络获取图片文件。&lt;/p&gt;
&lt;h3 id=&#34;方案二替换为本地文件&#34;&gt;方案二：替换为本地文件&lt;/h3&gt;
&lt;p&gt;如果你的站点希望照顾到 不支持 emoji 的浏览器。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
