8.9 修改代码高亮样式

This commit is contained in:
小赵同学 committed 2024-08-09 09:07:26 +08:00
1 parent 62cac6c7b0
commit 2e11da0d0b
15 files changed
+2414 -2410

No files matched your search

+37 -37
View File
@@ -117,56 +117,56 @@
<h2 id="wordpress的接入方法">WordPress的接入方法</h2>
<p>只需要将以下代码</p>
<p>加入你的插件或主题的 <code>functions.php</code> 里即可</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-php" data-lang="php"><span style="display:flex;"><span><span style="color:#66d9ef">if</span> ( <span style="color:#f92672">!</span> <span style="color:#a6e22e">function_exists</span>( <span style="color:#e6db74">&#39;get_cravatar_url&#39;</span> ) ) {
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-php" data-lang="php"><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">if</span> <span style="color:#000;font-weight:bold">(</span> <span style="color:#ce5c00;font-weight:bold">!</span> <span style="color:#000">function_exists</span><span style="color:#000;font-weight:bold">(</span> <span style="color:#4e9a06">&#39;get_cravatar_url&#39;</span> <span style="color:#000;font-weight:bold">)</span> <span style="color:#000;font-weight:bold">)</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">function</span> <span style="color:#a6e22e">get_cravatar_url</span>( $url ) {
</span></span><span style="display:flex;"><span> $sources <span style="color:#f92672">=</span> <span style="color:#66d9ef">array</span>(
</span></span><span style="display:flex;"><span> <span style="color:#e6db74">&#39;www.gravatar.com&#39;</span>,
</span></span><span style="display:flex;"><span> <span style="color:#e6db74">&#39;0.gravatar.com&#39;</span>,
</span></span><span style="display:flex;"><span> <span style="color:#e6db74">&#39;1.gravatar.com&#39;</span>,
</span></span><span style="display:flex;"><span> <span style="color:#e6db74">&#39;2.gravatar.com&#39;</span>,
</span></span><span style="display:flex;"><span> <span style="color:#e6db74">&#39;secure.gravatar.com&#39;</span>,
</span></span><span style="display:flex;"><span> <span style="color:#e6db74">&#39;cn.gravatar.com&#39;</span>,
</span></span><span style="display:flex;"><span> <span style="color:#e6db74">&#39;gravatar.com&#39;</span>,
</span></span><span style="display:flex;"><span> );
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">function</span> <span style="color:#000">get_cravatar_url</span><span style="color:#000;font-weight:bold">(</span> <span style="color:#000">$url</span> <span style="color:#000;font-weight:bold">)</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">$sources</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#204a87;font-weight:bold">array</span><span style="color:#000;font-weight:bold">(</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#39;www.gravatar.com&#39;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#39;0.gravatar.com&#39;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#39;1.gravatar.com&#39;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#39;2.gravatar.com&#39;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#39;secure.gravatar.com&#39;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#39;cn.gravatar.com&#39;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#39;gravatar.com&#39;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">str_replace</span>( $sources, <span style="color:#e6db74">&#39;cravatar.cn&#39;</span>, $url );
</span></span><span style="display:flex;"><span> }
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">return</span> <span style="color:#000">str_replace</span><span style="color:#000;font-weight:bold">(</span> <span style="color:#000">$sources</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#39;cravatar.cn&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#000">$url</span> <span style="color:#000;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#a6e22e">add_filter</span>( <span style="color:#e6db74">&#39;um_user_avatar_url_filter&#39;</span>, <span style="color:#e6db74">&#39;get_cravatar_url&#39;</span>, <span style="color:#ae81ff">1</span> );
</span></span><span style="display:flex;"><span> <span style="color:#a6e22e">add_filter</span>( <span style="color:#e6db74">&#39;bp_gravatar_url&#39;</span>, <span style="color:#e6db74">&#39;get_cravatar_url&#39;</span>, <span style="color:#ae81ff">1</span> );
</span></span><span style="display:flex;"><span> <span style="color:#a6e22e">add_filter</span>( <span style="color:#e6db74">&#39;get_avatar_url&#39;</span>, <span style="color:#e6db74">&#39;get_cravatar_url&#39;</span>, <span style="color:#ae81ff">1</span> );
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span> <span style="color:#000">add_filter</span><span style="color:#000;font-weight:bold">(</span> <span style="color:#4e9a06">&#39;um_user_avatar_url_filter&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#39;get_cravatar_url&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">1</span> <span style="color:#000;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">add_filter</span><span style="color:#000;font-weight:bold">(</span> <span style="color:#4e9a06">&#39;bp_gravatar_url&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#39;get_cravatar_url&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">1</span> <span style="color:#000;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">add_filter</span><span style="color:#000;font-weight:bold">(</span> <span style="color:#4e9a06">&#39;get_avatar_url&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#39;get_cravatar_url&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">1</span> <span style="color:#000;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">if</span> ( <span style="color:#f92672">!</span> <span style="color:#a6e22e">function_exists</span>( <span style="color:#e6db74">&#39;set_defaults_for_cravatar&#39;</span> ) ) {
</span></span><span style="display:flex;"><span> <span style="color:#e6db74">/**
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> * 替换 WordPress 讨论设置中的默认头像
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> */</span>
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">function</span> <span style="color:#a6e22e">set_defaults_for_cravatar</span>( $avatar_defaults ) {
</span></span><span style="display:flex;"><span> $avatar_defaults[<span style="color:#e6db74">&#39;gravatar_default&#39;</span>] <span style="color:#f92672">=</span> <span style="color:#e6db74">&#39;Cravatar 标志&#39;</span>;
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">if</span> <span style="color:#000;font-weight:bold">(</span> <span style="color:#ce5c00;font-weight:bold">!</span> <span style="color:#000">function_exists</span><span style="color:#000;font-weight:bold">(</span> <span style="color:#4e9a06">&#39;set_defaults_for_cravatar&#39;</span> <span style="color:#000;font-weight:bold">)</span> <span style="color:#000;font-weight:bold">)</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#8f5902;font-style:italic">/**
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"> * 替换 WordPress 讨论设置中的默认头像
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"> */</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">function</span> <span style="color:#000">set_defaults_for_cravatar</span><span style="color:#000;font-weight:bold">(</span> <span style="color:#000">$avatar_defaults</span> <span style="color:#000;font-weight:bold">)</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">$avatar_defaults</span><span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#39;gravatar_default&#39;</span><span style="color:#000;font-weight:bold">]</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#4e9a06">&#39;Cravatar 标志&#39;</span><span style="color:#000;font-weight:bold">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">return</span> $avatar_defaults;
</span></span><span style="display:flex;"><span> }
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">return</span> <span style="color:#000">$avatar_defaults</span><span style="color:#000;font-weight:bold">;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#a6e22e">add_filter</span>( <span style="color:#e6db74">&#39;avatar_defaults&#39;</span>, <span style="color:#e6db74">&#39;set_defaults_for_cravatar&#39;</span>, <span style="color:#ae81ff">1</span> );
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span> <span style="color:#000">add_filter</span><span style="color:#000;font-weight:bold">(</span> <span style="color:#4e9a06">&#39;avatar_defaults&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#39;set_defaults_for_cravatar&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">1</span> <span style="color:#000;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">if</span> ( <span style="color:#f92672">!</span> <span style="color:#a6e22e">function_exists</span>( <span style="color:#e6db74">&#39;set_user_profile_picture_for_cravatar&#39;</span> ) ) {
</span></span><span style="display:flex;"><span> <span style="color:#e6db74">/**
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> * 替换个人资料卡中的头像上传地址
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> */</span>
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">function</span> <span style="color:#a6e22e">set_user_profile_picture_for_cravatar</span>() {
</span></span><span style="display:flex;"><span> <span style="color:#66d9ef">return</span> <span style="color:#e6db74">&#39;&lt;a href=&#34;https://cravatar.cn&#34; target=&#34;_blank&#34;&gt;您可以在 Cravatar 修改您的资料图片&lt;/a&gt;&#39;</span>;
</span></span><span style="display:flex;"><span> }
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">if</span> <span style="color:#000;font-weight:bold">(</span> <span style="color:#ce5c00;font-weight:bold">!</span> <span style="color:#000">function_exists</span><span style="color:#000;font-weight:bold">(</span> <span style="color:#4e9a06">&#39;set_user_profile_picture_for_cravatar&#39;</span> <span style="color:#000;font-weight:bold">)</span> <span style="color:#000;font-weight:bold">)</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#8f5902;font-style:italic">/**
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"> * 替换个人资料卡中的头像上传地址
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"> */</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">function</span> <span style="color:#000">set_user_profile_picture_for_cravatar</span><span style="color:#000;font-weight:bold">()</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">return</span> <span style="color:#4e9a06">&#39;&lt;a href=&#34;https://cravatar.cn&#34; target=&#34;_blank&#34;&gt;您可以在 Cravatar 修改您的资料图片&lt;/a&gt;&#39;</span><span style="color:#000;font-weight:bold">;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#a6e22e">add_filter</span>( <span style="color:#e6db74">&#39;user_profile_picture_description&#39;</span>, <span style="color:#e6db74">&#39;set_user_profile_picture_for_cravatar&#39;</span>, <span style="color:#ae81ff">1</span> );
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span> <span style="color:#000">add_filter</span><span style="color:#000;font-weight:bold">(</span> <span style="color:#4e9a06">&#39;user_profile_picture_description&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#39;set_user_profile_picture_for_cravatar&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">1</span> <span style="color:#000;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>但是要注意的是7b2,日主题,子比主题主题作者已经摒弃了Gravatar头像</p>
<p>使用的自己的头像方案,所以无法支持Cravatar头像</p>
<h2 id="typecho的接入方法">typecho的接入方法</h2>
<p>我们主要是对官方的Gravatar换源,这个很简单</p>
<p>找到自己的博客程序的根目录,将以下代码加到站点根目录的 <code>config.inc.php</code> 中即可</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-php" data-lang="php"><span style="display:flex;"><span><span style="color:#a6e22e">define</span>(<span style="color:#e6db74">&#39;__TYPECHO_GRAVATAR_PREFIX__&#39;</span>, <span style="color:#e6db74">&#39;https://cravatar.cn/avatar/&#39;</span>);
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-php" data-lang="php"><span style="display:flex;"><span><span style="color:#000">define</span><span style="color:#000;font-weight:bold">(</span><span style="color:#4e9a06">&#39;__TYPECHO_GRAVATAR_PREFIX__&#39;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#39;https://cravatar.cn/avatar/&#39;</span><span style="color:#000;font-weight:bold">);</span>
</span></span></code></pre></div><h2 id="cravatar官网地址">Cravatar官网地址</h2>
<blockquote>
<p>