{
    "version": "https://jsonfeed.org/version/1",
    "title": "Frankelin Docs & Blog Blog",
    "home_page_url": "https://frankelinli.github.io/blog",
    "description": "Frankelin Docs & Blog Blog",
    "items": [
        {
            "id": "https://frankelinli.github.io/blog/sticky粘性",
            "content_html": "<h2 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"1️⃣-使用-css-position-sticky\">1️⃣ 使用 CSS <code>position: sticky</code><a href=\"https://frankelinli.github.io/blog/sticky%E7%B2%98%E6%80%A7#1%EF%B8%8F%E2%83%A3-%E4%BD%BF%E7%94%A8-css-position-sticky\" class=\"hash-link\" aria-label=\"1️⃣-使用-css-position-sticky的直接链接\" title=\"1️⃣-使用-css-position-sticky的直接链接\">​</a></h2>\n<p>现代浏览器都支持 <code>position: sticky</code>，基本用法：</p>\n<div class=\"language-text codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-text codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">.docs-sidebar {</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    position: sticky;</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    top: 20px; /* 距离顶部 20px */</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">}</span><br></span></code></pre></div></div>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"解释\">解释：<a href=\"https://frankelinli.github.io/blog/sticky%E7%B2%98%E6%80%A7#%E8%A7%A3%E9%87%8A\" class=\"hash-link\" aria-label=\"解释：的直接链接\" title=\"解释：的直接链接\">​</a></h3>\n<ul>\n<li><code>position: sticky;</code>：当滚动到这个元素时，会固定在父容器内</li>\n<li><code>top: 20px;</code>：距离浏览器窗口顶部的距离</li>\n<li>重要：<strong>父容器不能有 <code>overflow: hidden</code> 或 <code>overflow: auto</code></strong>，否则 sticky 失效</li>\n</ul>\n<h2 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"2️⃣-保证父容器高度足够\">2️⃣ 保证父容器高度足够<a href=\"https://frankelinli.github.io/blog/sticky%E7%B2%98%E6%80%A7#2%EF%B8%8F%E2%83%A3-%E4%BF%9D%E8%AF%81%E7%88%B6%E5%AE%B9%E5%99%A8%E9%AB%98%E5%BA%A6%E8%B6%B3%E5%A4%9F\" class=\"hash-link\" aria-label=\"2️⃣ 保证父容器高度足够的直接链接\" title=\"2️⃣ 保证父容器高度足够的直接链接\">​</a></h2>\n<ul>\n<li>你的 <code>&lt;aside class=\"docs-sidebar\"&gt;</code> 可能在文章内容容器里</li>\n<li>sticky 只会在父容器高度范围内滚动，如果父容器太矮，侧边栏不会完全粘住</li>\n<li>Astra 主题文章通常用 <code>.entry-content</code> 包裹，你可以用 CSS 让其 <code>display: flex;</code> 并让侧边栏粘性：</li>\n</ul>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"关键点\">关键点：<a href=\"https://frankelinli.github.io/blog/sticky%E7%B2%98%E6%80%A7#%E5%85%B3%E9%94%AE%E7%82%B9\" class=\"hash-link\" aria-label=\"关键点：的直接链接\" title=\"关��键点：的直接链接\">​</a></h3>\n<div class=\"theme-admonition theme-admonition-tip admonition_xJq3 alert alert--success\"><div class=\"admonitionHeading_Gvgb\"><span class=\"admonitionIcon_Rf37\"><svg viewBox=\"0 0 12 16\"><path fill-rule=\"evenodd\" d=\"M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z\"></path></svg></span>提示</div><div class=\"admonitionContent_BuS1\"><ol>\n<li><strong><code>position: sticky</code> 的粘性只在父元素范围内生效</strong>\n<ul>\n<li>也就是说 <code>&lt;aside class=\"docs-sidebar\"&gt;</code> 只能在它的直接或间接父元素（这里是 <code>.ast-container</code>）内“粘住”</li>\n<li>一旦滚动超出了父元素的底部，它就不再固定，而是跟随父元素自然停止</li>\n</ul>\n</li>\n<li><strong>为什么会这样</strong>\n<ul>\n<li><code>sticky</code> 并不是固定在整个窗口，而是“相对父容器的相对定位”</li>\n<li>父容器边界就是它的限制范围</li>\n</ul>\n</li>\n</ol></div></div>",
            "url": "https://frankelinli.github.io/blog/sticky粘性",
            "title": "sticky粘性",
            "summary": "1️⃣ 使用 CSS position: sticky",
            "date_modified": "2025-09-11T22:44:00.000Z",
            "tags": []
        },
        {
            "id": "https://frankelinli.github.io/blog/WordPress自带JQuery，不需要自己额外加载",
            "content_html": "<p>WordPress 核心已经自带了 jQuery，您不需要在子主题中专门 enqueue jQuery。</p>\n<p>具体来说：</p>\n<ol>\n<li>WordPress 自带的 jQuery 文件位于：</li>\n</ol>\n<div class=\"language-text codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-text codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">wp-includes/js/jquery/jquery.js</span><br></span></code></pre></div></div>\n<ol start=\"2\">\n<li>WordPress 自动注册了以下 jQuery 相关的脚本：</li>\n</ol>\n<ul>\n<li>jquery</li>\n<li>jquery-core</li>\n<li>jquery-migrate</li>\n</ul>\n<ol start=\"3\">\n<li>很多 WordPress 核心功能依赖 jQuery，所以它会自动加载。</li>\n</ol>\n<p>如果您要在子主题中写 jQuery 代码，只需要这样：</p>\n<div class=\"language-php codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-php codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// functions.php 中添加自己的 JS 文件</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">my_theme_scripts</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">wp_enqueue_script</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'my-custom-js'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token function\" style=\"color:#d73a49\">get_stylesheet_directory_uri</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'/js/custom.js'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">array</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'1.0'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token constant boolean\" style=\"color:#36acaa\">true</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'wp_enqueue_scripts'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'my_theme_scripts'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><br></span></code></pre></div></div>\n<p>然后在 custom.js 中直接使用 jQuery 即可：</p>\n<div class=\"language-javascript codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-javascript codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token function\" style=\"color:#d73a49\">jQuery</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token dom variable\" style=\"color:#36acaa\">document</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">ready</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token parameter\">$</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 您的代码</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><br></span></code></pre></div></div>\n<p>不需要这样做：</p>\n<div class=\"language-php codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-php codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// ❌ 不需要这样</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">wp_enqueue_script</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'jquery'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\">  </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 不需要，WordPress 已经加载了</span><br></span></code></pre></div></div>\n<p>小提示：</p>\n<ul>\n<li>如果您的代码需要确保 jQuery 已加载，可以在 wp_enqueue_script 时将 jquery 添加为依赖：</li>\n</ul>\n<div class=\"language-php codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-php codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token function\" style=\"color:#d73a49\">wp_enqueue_script</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'my-custom-js'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token function\" style=\"color:#d73a49\">get_stylesheet_directory_uri</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'/js/custom.js'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">array</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'jquery'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'1.0'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token constant boolean\" style=\"color:#36acaa\">true</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><br></span></code></pre></div></div>",
            "url": "https://frankelinli.github.io/blog/WordPress自带JQuery，不需要自己额外加载",
            "title": "WordPress自带JQuery，不需要自己额外加载",
            "summary": "WordPress 核心已经自带了 jQuery，您不需要在子主题中专门 enqueue jQuery。",
            "date_modified": "2024-12-25T18:17:00.000Z",
            "tags": []
        },
        {
            "id": "https://frankelinli.github.io/blog/JQuery减轻心智负担，更容易阅读和理解代码",
            "content_html": "<p>JQuery减轻心智负担，更容易阅读和理解代码.</p>\n<p>对很多开发者来说，jQuery的代码更容易阅读和理解。这里有几个原因：</p>\n<ol>\n<li>\n<p>jQuery语法更直观</p>\n<ul>\n<li><code>$('.class')</code> vs <code>document.querySelector('.class')</code></li>\n<li><code>$(element).hide()</code> vs <code>element.style.display = 'none'</code></li>\n</ul>\n</li>\n<li>\n<p>链式操作更优雅</p>\n<div class=\"language-javascript codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-javascript codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// jQuery</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">$</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'.element'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">hide</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">addClass</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'hidden'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">text</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'新内容'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 原生JS</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">const</span><span class=\"token plain\"> element </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token dom variable\" style=\"color:#36acaa\">document</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">querySelector</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'.element'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">style</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">display</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'none'</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">classList</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">add</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'hidden'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">textContent</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'新内容'</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><br></span></code></pre></div></div>\n</li>\n</ol>\n<p><strong>jQuery 的选择器语法统一且直观，这种一致性确实能减轻心智负担：</strong></p>\n<div class=\"language-javascript codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-javascript codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// jQuery 选择器，直观清晰</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">$</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'.announcement-bar'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 类</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">$</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'#header'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\">             </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// ID</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">$</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'div'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\">                 </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 标签</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">$</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'[data-type=\"news\"]'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\">  </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 属性</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">$</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'ul li:first'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\">         </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 第一个li</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">$</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'p:contains(\"Hello\")'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 包含文本的p标签</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 原生 JavaScript 要记很多不同的方法</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token dom variable\" style=\"color:#36acaa\">document</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">querySelector</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'.announcement-bar'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token dom variable\" style=\"color:#36acaa\">document</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">getElementById</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'header'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token dom variable\" style=\"color:#36acaa\">document</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">getElementsByTagName</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'div'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token dom variable\" style=\"color:#36acaa\">document</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">querySelector</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'[data-type=\"news\"]'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token dom variable\" style=\"color:#36acaa\">document</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">querySelector</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'ul li:first-child'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 包含文本还得自己写判断...</span><br></span></code></pre></div></div>\n<p>jQuery 的选择器语法统一且直观，这种一致性确实能减轻心智负担：</p>\n<ul>\n<li>都是 <code>$()</code> 开头</li>\n<li>里面写啥选择器都行</li>\n<li>不用记那么多不同的方法名</li>\n<li>选到了就能用，选不到也不会报错</li>\n</ul>\n<p>这就是为什么即便在现代前端开发中，很多人仍然喜欢用 jQuery 的原因之一 - 它让代码更易写易读！</p>",
            "url": "https://frankelinli.github.io/blog/JQuery减轻心智负担，更容易阅读和理解代码",
            "title": "JQuery减轻心智负担，更容易阅读和理解代码",
            "summary": "JQuery减轻心智负担，更容易阅读和理解代码.",
            "date_modified": "2024-12-25T17:53:00.000Z",
            "tags": []
        },
        {
            "id": "https://frankelinli.github.io/blog/CSS伪元素经典应用案例2",
            "content_html": "<p>我来展示几个实用且常见的伪元素应用案例：</p>\n<ol>\n<li><strong>必填表单标记</strong>：用于标记必填字段</li>\n<li><strong>外部链接标识</strong>：区分外部链接和内部链接</li>\n<li><strong>引用样式</strong>：美化引用内容</li>\n<li><strong>文件类型标识</strong>：根据文件类型显示不同图标</li>\n<li><strong>步骤指引</strong>：自动编号的步骤指示器</li>\n<li><strong>工具提示</strong>：无需JavaScript的简单提示框</li>\n</ol>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"https://docu-1319658309.cos.ap-guangzhou.myqcloud.com/image-20241223125504548.png\" alt=\"image-20241223125504548\" class=\"img_ev3q\"></p>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"https://docu-1319658309.cos.ap-guangzhou.myqcloud.com/image-20241223125515957.png\" alt=\"image-20241223125515957\" class=\"img_ev3q\"></p>\n<div class=\"playgroundContainer_XwyR\"><div class=\"playgroundHeader_EIHj\">实时编辑器</div><div class=\"playgroundEditor_L2Ll\"><pre class=\"prism-code language-tsx\" style=\"margin:0;outline:none;padding:10px;font-family:inherit;color:#393A34;background-color:#f6f8fa\" spellcheck=\"false\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token doctype punctuation\" style=\"color:#393A34;font-style:italic\">&lt;!</span><span class=\"token doctype doctype-tag\" style=\"color:#999988;font-style:italic\">DOCTYPE</span><span class=\"token doctype\" style=\"color:#999988;font-style:italic\"> </span><span class=\"token doctype name\" style=\"color:#999988;font-style:italic\">html</span><span class=\"token doctype punctuation\" style=\"color:#393A34;font-style:italic\">&gt;</span><span class=\"token plain\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">html</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">head</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">style</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        body {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            font-family: -apple-system, BlinkMacSystemFont, sans-serif;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            padding: 2rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            background: #f5f7fa;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            line-height: 1.6;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .demo {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            margin: 2rem auto;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            max-width: 600px;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            background: white;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            padding: 2rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            border-radius: 8px;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            box-shadow: 0 2px 4px rgba(0,0,0,0.1);</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        /* 1. 必填表单标记 */</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .form-group {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            margin-bottom: 1rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .required-field::after {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            content: '*';</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            color: #e53e3e;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            margin-left: 4px;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .input {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            width: 100%;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            padding: 0.5rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            border: 1px solid #e2e8f0;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            border-radius: 4px;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            margin-top: 0.5rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        /* 2. 外部链接标识 */</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .external-link {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            color: #4a5568;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            text-decoration: none;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .external-link::after {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            content: '↗';</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            margin-left: 4px;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            font-size: 0.9em;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            color: #718096;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        /* 3. 引用样式 */</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .quote {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            position: relative;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            padding: 1.5rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            background: #f7fafc;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            border-radius: 8px;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .quote::before {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            content: '\"';</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            position: absolute;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            top: -0.5rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            left: 1rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            font-size: 4rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            color: #cbd5e0;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            font-family: Georgia, serif;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            line-height: 1;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        /* 4. 文件类型标识 */</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .file-link {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            display: inline-block;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            padding: 0.5rem 1rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            text-decoration: none;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            color: #4a5568;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            background: #edf2f7;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            border-radius: 4px;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .file-link[data-type]::before {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            margin-right: 8px;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            font-weight: bold;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .file-link[data-type=\"pdf\"]::before {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            content: '[PDF]';</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            color: #e53e3e;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .file-link[data-type=\"doc\"]::before {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            content: '[DOC]';</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            color: #2b6cb0;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        /* 5. 步骤指引 */</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .steps {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            counter-reset: step;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .step {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            position: relative;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            padding-left: 3rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            margin-bottom: 1.5rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .step::before {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            counter-increment: step;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            content: counter(step);</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            position: absolute;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            left: 0;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            width: 2rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            height: 2rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            background: #4299e1;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            color: white;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            border-radius: 50%;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            display: flex;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            align-items: center;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            justify-content: center;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            font-weight: bold;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .step::after {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            content: '';</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            position: absolute;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            left: 1rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            top: 2.5rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            bottom: -1.5rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            width: 2px;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            background: #e2e8f0;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .step:last-child::after {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            display: none;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        /* 6. 工具提示 */</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .tooltip {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            position: relative;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            display: inline-block;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            border-bottom: 1px dotted #4a5568;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            cursor: help;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .tooltip::before {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            content: attr(data-tip);</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            position: absolute;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            bottom: 100%;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            left: 50%;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            transform: translateX(-50%) translateY(-8px);</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            padding: 0.5rem 1rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            background: #2d3748;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            color: white;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            font-size: 0.875rem;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            border-radius: 4px;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            white-space: nowrap;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            visibility: hidden;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            opacity: 0;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            transition: 0.3s ease;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        .tooltip:hover::before {</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            visibility: visible;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            opacity: 1;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            transform: translateX(-50%) translateY(-4px);</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        }</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">style</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">head</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">body</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    &lt;!-- 1. 必填表单 --&gt;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">demo</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">form-group</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">label</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">required-field</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">用户名</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">label</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">input</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">type</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">text</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">input</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">form-group</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">label</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">required-field</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">密码</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">label</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">input</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">type</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">password</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">input</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    &lt;!-- 2. 外部链接 --&gt;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">demo</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">href</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">#</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">external-link</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">访问 GitHub</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">&lt;br&gt;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">href</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">#</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">external-link</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">查看文档</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    &lt;!-- 3. 引用样式 --&gt;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">demo</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">quote</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            生活中最重要的不是所处的位置，而是所朝的方向。</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    &lt;!-- 4. 文件类型标识 --&gt;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">demo</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">href</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">#</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">file-link</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">data-type</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">pdf</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">产品说明书.pdf</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">&lt;br&gt;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">href</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">#</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">file-link</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">data-type</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">doc</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">使用手册.doc</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    &lt;!-- 5. 步骤指引 --&gt;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">demo</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">steps</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">step</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">注册账号</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">step</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">完善信息</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">step</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">开始使用</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\">\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    &lt;!-- 6. 工具提示 --&gt;</span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">demo</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">span</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">tooltip</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">data-tip</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">这是一个帮助提示</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\">hover我查看提示</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">span</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">body</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain-text\"></span>\n</span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain-text\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">html</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span>\n</span></pre></div><div class=\"playgroundHeader_EIHj\">结果</div><div class=\"playgroundPreview_bYPY\"><div>Loading...</div></div></div>\n<p>这些都是实际开发中非常常用的案例：</p>\n<ol>\n<li><strong>必填表单标记</strong>：用于标记必填字段</li>\n<li><strong>外部链接标识</strong>：区分外部链接和内部链接</li>\n<li><strong>引用样式</strong>：美化引用内容</li>\n<li><strong>文件类型标识</strong>：根据文件类型显示不同图标</li>\n<li><strong>步骤指引</strong>：自动编号的步骤指示器</li>\n<li><strong>工具提示</strong>：无需JavaScript的简单提示框</li>\n</ol>\n<p>这些效果的特点是：</p>\n<ul>\n<li>不需要额外的HTML标签</li>\n<li>可以通过CSS维护和修改</li>\n<li>提升了用户体验</li>\n<li>减少了JavaScript的依赖</li>\n</ul>\n<p>需要我详细解释某个效果的实现原理吗？</p>",
            "url": "https://frankelinli.github.io/blog/CSS伪元素经典应用案例2",
            "title": "CSS伪元素经典应用案例2",
            "summary": "我来展示几个实用且常见的伪元素应用案例：",
            "date_modified": "2024-12-23T12:46:00.000Z",
            "tags": []
        },
        {
            "id": "https://frankelinli.github.io/blog/精美的CSS伪元素制作价格标签页",
            "content_html": "<p>这里是一个实用的价格卡片设计示例，包含多个精美的伪元素效果。价格标签是伪元素应用的经典案例。</p>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"https://docu-1319658309.cos.ap-guangzhou.myqcloud.com/image-20241223124218808.png\" alt=\"image-20241223124218808\" class=\"img_ev3q\"></p>\n<div class=\"language-html codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-html codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token doctype punctuation\" style=\"color:#393A34;font-style:italic\">&lt;!</span><span class=\"token doctype doctype-tag\" style=\"color:#999988;font-style:italic\">DOCTYPE</span><span class=\"token doctype\" style=\"color:#999988;font-style:italic\"> </span><span class=\"token doctype name\" style=\"color:#999988;font-style:italic\">html</span><span class=\"token doctype punctuation\" style=\"color:#393A34;font-style:italic\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">html</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">head</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">style</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector\" style=\"color:#00009f\">*</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">margin</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">padding</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">box-sizing</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> border-box</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector\" style=\"color:#00009f\">body</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">display</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> flex</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">justify-content</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> center</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">align-items</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> center</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">min-height</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">100</span><span class=\"token style language-css unit\">vh</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">background</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#f5f7fa</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">font-family</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> -apple-system</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> BlinkMacSystemFont</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> </span><span class=\"token style language-css string\" style=\"color:#e3116c\">\"Segoe UI\"</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> Roboto</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> </span><span class=\"token style language-css string\" style=\"color:#e3116c\">\"Helvetica Neue\"</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> Arial</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.container</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">display</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> grid</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">grid-template-columns</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">repeat</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css\">auto-fit</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">minmax</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">300</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">1</span><span class=\"token style language-css unit\">fr</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">gap</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">2</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">padding</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">2</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">max-width</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">1200</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">width</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">100</span><span class=\"token style language-css unit\">%</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.card</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> relative</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">background</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css color\">white</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">border-radius</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">12</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">padding</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">2</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">box-shadow</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">4</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">6</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css\"> </span><span class=\"token style language-css color function\" style=\"color:#d73a49\">rgba</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css color\"> </span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css color\"> </span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css color\"> </span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0.1</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transition</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> transform </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0.3</span><span class=\"token style language-css unit\">s</span><span class=\"token style language-css\"> ease</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.card</span><span class=\"token style language-css selector pseudo-class\" style=\"color:#00009f\">:hover</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transform</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">translateY</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">-5</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css comment\" style=\"color:#999988;font-style:italic\">/* 1. 精美的价格标签 */</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.price</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> relative</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">font-size</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">1.5</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">color</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#2d3748</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">font-weight</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> bold</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.price</span><span class=\"token style language-css selector pseudo-element\" style=\"color:#00009f\">::before</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">content</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css string\" style=\"color:#e3116c\">'¥'</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">font-size</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">1</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> relative</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">top</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">-0.5</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">margin-right</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0.2</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.price</span><span class=\"token style language-css selector pseudo-element\" style=\"color:#00009f\">::after</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">content</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css string\" style=\"color:#e3116c\">'/月'</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">font-size</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0.9</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">color</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#718096</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">margin-left</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0.2</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css comment\" style=\"color:#999988;font-style:italic\">/* 2. 优雅的链接下划线 */</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.fancy-link</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> relative</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">color</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#4a5568</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">text-decoration</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> none</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">font-weight</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">500</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.fancy-link</span><span class=\"token style language-css selector pseudo-element\" style=\"color:#00009f\">::after</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">content</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css string\" style=\"color:#e3116c\">''</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> absolute</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">width</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">100</span><span class=\"token style language-css unit\">%</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">height</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">2</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">bottom</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">-2</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">left</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">background</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">linear-gradient</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">90</span><span class=\"token style language-css unit\">deg</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#667eea</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#764ba2</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transform</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">scaleX</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transform-origin</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> right</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transition</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> transform </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0.3</span><span class=\"token style language-css unit\">s</span><span class=\"token style language-css\"> ease</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.fancy-link</span><span class=\"token style language-css selector pseudo-class\" style=\"color:#00009f\">:hover</span><span class=\"token style language-css selector pseudo-element\" style=\"color:#00009f\">::after</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transform</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">scaleX</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">1</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transform-origin</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> left</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css comment\" style=\"color:#999988;font-style:italic\">/* 3. 高级特性标记 */</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.feature</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> relative</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">padding-left</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">1.5</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">margin</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0.8</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">color</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#4a5568</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.feature</span><span class=\"token style language-css selector pseudo-element\" style=\"color:#00009f\">::before</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">content</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css string\" style=\"color:#e3116c\">''</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> absolute</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">left</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">top</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">50</span><span class=\"token style language-css unit\">%</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transform</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">translateY</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">-50</span><span class=\"token style language-css unit\">%</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">width</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">16</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">height</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">16</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">background</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">linear-gradient</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">45</span><span class=\"token style language-css unit\">deg</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#667eea</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#764ba2</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">border-radius</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">50</span><span class=\"token style language-css unit\">%</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">opacity</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0.2</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.feature</span><span class=\"token style language-css selector pseudo-element\" style=\"color:#00009f\">::after</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">content</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css string\" style=\"color:#e3116c\">'✓'</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> absolute</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">left</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">4</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">top</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">50</span><span class=\"token style language-css unit\">%</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transform</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">translateY</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">-50</span><span class=\"token style language-css unit\">%</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">color</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#4a5568</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">font-size</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0.8</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css comment\" style=\"color:#999988;font-style:italic\">/* 4. 热门标签 */</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.popular</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> relative</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">overflow</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> hidden</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.popular</span><span class=\"token style language-css selector pseudo-element\" style=\"color:#00009f\">::before</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">content</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css string\" style=\"color:#e3116c\">'HOT'</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> absolute</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">top</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">20</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">right</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">-24</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">background</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#ed64a6</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">color</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css color\">white</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">padding</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">4</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">30</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">font-size</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0.75</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transform</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">rotate</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">45</span><span class=\"token style language-css unit\">deg</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">box-shadow</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">2</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">4</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css\"> </span><span class=\"token style language-css color function\" style=\"color:#d73a49\">rgba</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0.1</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css comment\" style=\"color:#999988;font-style:italic\">/* 5. 分割线 */</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.divider</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> relative</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">margin</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">1.5</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">height</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">1</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.divider</span><span class=\"token style language-css selector pseudo-element\" style=\"color:#00009f\">::before</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">content</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css string\" style=\"color:#e3116c\">''</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">position</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> absolute</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">left</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">top</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">width</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">100</span><span class=\"token style language-css unit\">%</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">height</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">1</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">background</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">linear-gradient</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">90</span><span class=\"token style language-css unit\">deg</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">                </span><span class=\"token style language-css color\">transparent</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">                </span><span class=\"token style language-css color function\" style=\"color:#d73a49\">rgba</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css color number\" style=\"color:#36acaa\">0.1</span><span class=\"token style language-css color punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">50</span><span class=\"token style language-css unit\">%</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">                </span><span class=\"token style language-css color\">transparent</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.btn</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">display</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> inline-block</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">padding</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0.8</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">1.5</span><span class=\"token style language-css unit\">rem</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">background</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">linear-gradient</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">90</span><span class=\"token style language-css unit\">deg</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#667eea</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">,</span><span class=\"token style language-css\"> </span><span class=\"token style language-css hexcode color\">#764ba2</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">color</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css color\">white</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">border-radius</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">6</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">text-decoration</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> none</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">font-weight</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css number\" style=\"color:#36acaa\">500</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transition</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> transform </span><span class=\"token style language-css number\" style=\"color:#36acaa\">0.2</span><span class=\"token style language-css unit\">s</span><span class=\"token style language-css\"> ease</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css selector class\" style=\"color:#00009f\">.btn</span><span class=\"token style language-css selector pseudo-class\" style=\"color:#00009f\">:hover</span><span class=\"token style language-css\"> </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">{</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">            </span><span class=\"token style language-css property\" style=\"color:#36acaa\">transform</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">:</span><span class=\"token style language-css\"> </span><span class=\"token style language-css function\" style=\"color:#d73a49\">translateY</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">(</span><span class=\"token style language-css number\" style=\"color:#36acaa\">-2</span><span class=\"token style language-css unit\">px</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">)</span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">;</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">        </span><span class=\"token style language-css punctuation\" style=\"color:#393A34\">}</span><span class=\"token style language-css\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token style language-css\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">style</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">head</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">body</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">container</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">card</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">price</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">199</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">divider</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">feature</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">无限存储空间</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">feature</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">实时多端同步</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">feature</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">个性化定制</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">divider</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">href</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">#</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">fancy-link</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">查看详情</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">card popular</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">price</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">299</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">divider</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">feature</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">企业级支持</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">feature</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">高级数据分析</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">feature</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">专属客服服务</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">feature</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">优先级解决问题</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">divider</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">href</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">#</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">btn</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">立即购买</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">a</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">body</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">html</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><br></span></code></pre></div></div>\n<p>这个示例展示了5个实用的伪元素应用：</p>\n<ol>\n<li>价格标签：使用<code>::before</code>和<code>::after</code>添加货币符号和时间单位</li>\n<li>链接特效：渐变色下划线动画</li>\n<li>特性列表：用伪元素创建优雅的复选标记</li>\n<li>热门标签：角标设计</li>\n<li>分割线：渐变分隔符</li>\n</ol>\n<p>这些效果都是实际开发中常用的，可以直接应用到实际项目中。</p>",
            "url": "https://frankelinli.github.io/blog/精美的CSS伪元素制作价格标签页",
            "title": "精美的CSS伪元素制作价格标签页",
            "summary": "这里是一个实用的价格卡片设计示例，包含多个精美的伪元素效果。价格标签是伪元素应用的经典案例。",
            "date_modified": "2024-12-23T12:39:00.000Z",
            "tags": []
        },
        {
            "id": "https://frankelinli.github.io/blog/CSS伪元素",
            "content_html": "<p>CSS伪元素并没有真正生成HTML元素，它们只是在<strong>视觉呈现层面</strong>上的效果。</p>\n<p>关键区别：</p>\n<ol>\n<li>用JavaScript获取DOM时，无法直接获取到伪元素</li>\n<li>伪元素不会出现在HTML结构中</li>\n<li>伪元素不会影响文档的语义结构</li>\n<li>不能给伪元素绑定事件监听器</li>\n</ol>\n<p>举个例子：</p>\n<div class=\"language-html codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-html codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag\" style=\"color:#00009f\"> </span><span class=\"token tag attr-name\" style=\"color:#00a4db\">class</span><span class=\"token tag attr-value punctuation attr-equals\" style=\"color:#393A34\">=</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag attr-value\" style=\"color:#e3116c\">box</span><span class=\"token tag attr-value punctuation\" style=\"color:#393A34\">\"</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">你好</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">div</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><br></span></code></pre></div></div>\n<div class=\"language-css codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-css codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token selector class\" style=\"color:#00009f\">.box</span><span class=\"token selector pseudo-element\" style=\"color:#00009f\">::after</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">  </span><span class=\"token property\" style=\"color:#36acaa\">content</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">\"世界\"</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><br></span></code></pre></div></div>\n<p>虽然页面上会显示\"你好世界\"，但：</p>\n<ul>\n<li><code>document.querySelector('.box').childNodes</code> 只能看到\"你好\"</li>\n<li>查看元素时只能看到 <code>&lt;div class=\"box\"&gt;你好&lt;/div&gt;</code></li>\n<li>伪元素\"世界\"只存在于浏览器的渲染层面</li>\n</ul>\n<p>所以更准确地说，伪元素是CSS提供的一种视觉效果机制，而不是真正的DOM元素。这也是为什么叫\"伪\"元素。</p>",
            "url": "https://frankelinli.github.io/blog/CSS伪元素",
            "title": "CSS伪元素解释",
            "summary": "CSS伪元素并没有真正生成HTML元素，它们只是在视觉呈现层面上的效果。",
            "date_modified": "2024-12-23T11:17:00.000Z",
            "tags": []
        },
        {
            "id": "https://frankelinli.github.io/blog/astra header页眉下划线动画",
            "content_html": "<p>对于Astra主题头部菜单导航的hover下划线动画效果，CSS伪元素即可实现：</p>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"css代码\">CSS代码：<a href=\"https://frankelinli.github.io/blog/astra%20header%E9%A1%B5%E7%9C%89%E4%B8%8B%E5%88%92%E7%BA%BF%E5%8A%A8%E7%94%BB#css%E4%BB%A3%E7%A0%81\" class=\"hash-link\" aria-label=\"CSS代码：的直接链接\" title=\"CSS代码：的直接链接\">​</a></h3>\n<div class=\"language-css codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-css codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token selector class\" style=\"color:#00009f\">.main-header-menu</span><span class=\"token selector\" style=\"color:#00009f\"> a</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">position</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> relative</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token selector class\" style=\"color:#00009f\">.main-header-menu</span><span class=\"token selector\" style=\"color:#00009f\"> a</span><span class=\"token selector pseudo-element\" style=\"color:#00009f\">::after</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">content</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">''</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">position</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> absolute</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">width</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">0</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">height</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">2</span><span class=\"token unit\">px</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">bottom</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">-2</span><span class=\"token unit\">px</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">left</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">0</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">background-color</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> currentColor</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">transition</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> width </span><span class=\"token number\" style=\"color:#36acaa\">0.2</span><span class=\"token unit\">s</span><span class=\"token plain\"> ease-out</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">opacity</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">1</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token selector class\" style=\"color:#00009f\">.main-header-menu</span><span class=\"token selector\" style=\"color:#00009f\"> a</span><span class=\"token selector pseudo-class\" style=\"color:#00009f\">:hover</span><span class=\"token selector pseudo-element\" style=\"color:#00009f\">::after</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">width</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">100</span><span class=\"token unit\">%</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span></code></pre></div></div>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"position-relative不可以去掉\">position: relative不可以去掉<a href=\"https://frankelinli.github.io/blog/astra%20header%E9%A1%B5%E7%9C%89%E4%B8%8B%E5%88%92%E7%BA%BF%E5%8A%A8%E7%94%BB#position-relative%E4%B8%8D%E5%8F%AF%E4%BB%A5%E5%8E%BB%E6%8E%89\" class=\"hash-link\" aria-label=\"position: relative不可以去掉的直接链接\" title=\"position: relative不可以去掉的直接链接\">​</a></h3>\n<p><code>.main-header-menu a {             position: relative;         }</code></p>\n<p>不可以去掉。<code>position: relative</code> 是必需的，因为它建立了一个定位上下文，是下划线动画正常工作的关键。</p>\n<p>原因是：</p>\n<ol>\n<li><code>::after</code> 伪元素使用了 <code>position: absolute</code></li>\n<li>没有 <code>position: relative</code> 的父元素，绝对定位的下划线将相对于最近的已定位祖先元素定位</li>\n<li>这可能导致下划线出现在错误的位置</li>\n</ol>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"使用currentcolor\">使用currentColor<a href=\"https://frankelinli.github.io/blog/astra%20header%E9%A1%B5%E7%9C%89%E4%B8%8B%E5%88%92%E7%BA%BF%E5%8A%A8%E7%94%BB#%E4%BD%BF%E7%94%A8currentcolor\" class=\"hash-link\" aria-label=\"使用currentColor的直接链接\" title=\"使用currentColor的直接链接\">​</a></h3>\n<p>使用currentColor，这样下划线颜色会自动跟随Astra主题设置的菜单颜色</p>",
            "url": "https://frankelinli.github.io/blog/astra header页眉下划线动画",
            "title": "astra header页眉下划线动画",
            "summary": "对于Astra主题头部菜单导航的hover下划线动画效果，CSS伪元素即可实现：",
            "date_modified": "2024-12-22T12:56:00.000Z",
            "tags": []
        },
        {
            "id": "https://frankelinli.github.io/blog/WordPress管理后台设置里添加维护模式开关",
            "content_html": "<ul>\n<li>维护模式下返回503状态码，对SEO更友好</li>\n<li>管理员可以继续正常访问站点</li>\n<li>简单的开关控制</li>\n<li>维护模式菜单移到\"设置\"菜单下</li>\n</ul>\n<div class=\"language-php codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-php codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 添加维护模式功能</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">csrwiki_maintenance_mode</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 添加设置菜单 - 放到\"设置\"下</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'admin_menu'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token function\" style=\"color:#d73a49\">add_options_page</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'维护模式设置'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'维护模式'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'manage_options'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'maintenance-settings'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'csrwiki_maintenance_settings_page'</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 注册设置</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'admin_init'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token function\" style=\"color:#d73a49\">register_setting</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'maintenance-settings-group'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'maintenance_mode_active'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 在wp加载早期检查维护模式</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'wp'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'csrwiki_check_maintenance_mode'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 检查维护模式状态</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">csrwiki_check_maintenance_mode</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 如果维护模式已启用且当前用户不是管理员</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token function\" style=\"color:#d73a49\">get_option</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'maintenance_mode_active'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">&amp;&amp;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">!</span><span class=\"token function\" style=\"color:#d73a49\">current_user_can</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'manage_options'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 确保不是wp-admin页面</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token operator\" style=\"color:#393A34\">!</span><span class=\"token function\" style=\"color:#d73a49\">is_admin</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">&amp;&amp;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">!</span><span class=\"token function\" style=\"color:#d73a49\">wp_doing_ajax</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token function\" style=\"color:#d73a49\">wp_die</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'&lt;div style=\"text-align: center; padding: 50px 20px;\"&gt;</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">                    &lt;h1&gt;网站维护中&lt;/h1&gt;</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">                    &lt;p&gt;我们正在进行系统维护，请稍后再访问。&lt;/p&gt;</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">                &lt;/div&gt;'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'网站维护中'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token keyword\" style=\"color:#00009f\">array</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'response'</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=&gt;</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">503</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'back_link'</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=&gt;</span><span class=\"token plain\"> </span><span class=\"token constant boolean\" style=\"color:#36acaa\">false</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 设置页面HTML</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">csrwiki_maintenance_settings_page</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">div </span><span class=\"token keyword\" style=\"color:#00009f\">class</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"wrap\"</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">h1</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">维护模式设置</span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">h1</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">form method</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"post\"</span><span class=\"token plain\"> action</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"options.php\"</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token plain\">php </span><span class=\"token function\" style=\"color:#d73a49\">settings_fields</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'maintenance-settings-group'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token plain\">php </span><span class=\"token function\" style=\"color:#d73a49\">do_settings_sections</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'maintenance-settings-group'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">table </span><span class=\"token keyword\" style=\"color:#00009f\">class</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"form-table\"</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">tr</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">th scope</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"row\"</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">维护模式状态</span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">th</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">td</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                        </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">label</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                            </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">input type</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"checkbox\"</span><span class=\"token plain\"> name</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"maintenance_mode_active\"</span><span class=\"token plain\"> value</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"1\"</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token plain\">php </span><span class=\"token function\" style=\"color:#d73a49\">checked</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token number\" style=\"color:#36acaa\">1</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token function\" style=\"color:#d73a49\">get_option</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'maintenance_mode_active'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token constant boolean\" style=\"color:#36acaa\">true</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                            启用维护模式</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                        </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">label</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">td</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">tr</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">table</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token plain\">php </span><span class=\"token function\" style=\"color:#d73a49\">submit_button</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">form</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">div</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token plain\">php</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 初始化维护模式功能</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">csrwiki_maintenance_mode</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><br></span></code></pre></div></div>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"如果开关不开启代码就不工作不会影响性能\">如果开关不开启，代码就不工作，不会影响性能<a href=\"https://frankelinli.github.io/blog/WordPress%E7%AE%A1%E7%90%86%E5%90%8E%E5%8F%B0%E8%AE%BE%E7%BD%AE%E9%87%8C%E6%B7%BB%E5%8A%A0%E7%BB%B4%E6%8A%A4%E6%A8%A1%E5%BC%8F%E5%BC%80%E5%85%B3#%E5%A6%82%E6%9E%9C%E5%BC%80%E5%85%B3%E4%B8%8D%E5%BC%80%E5%90%AF%E4%BB%A3%E7%A0%81%E5%B0%B1%E4%B8%8D%E5%B7%A5%E4%BD%9C%E4%B8%8D%E4%BC%9A%E5%BD%B1%E5%93%8D%E6%80%A7%E8%83%BD\" class=\"hash-link\" aria-label=\"如果开关不开启，代码就不工作，不会影响性能的直接链接\" title=\"如果开关不开启，代码就不工作，不会影响性能的直接链接\">​</a></h3>\n<p>是的，性能影响可以忽略不计。让我解释代码执行过程：</p>\n<ol>\n<li>\n<p>插件注册了两个主要行为：</p>\n<ul>\n<li>admin_menu hook：仅在后台运行时加载</li>\n<li>admin_init hook：仅在后台运行时加载</li>\n<li>wp hook：虽然每次都会执行，但只是一个简单的条件判断</li>\n</ul>\n</li>\n<li>\n<p>具体分析维护模式关闭时的执行流程：</p>\n</li>\n</ol>\n<div class=\"language-php codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-php codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">csrwiki_check_maintenance_mode</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 当维护模式未开启时，这个if判断直接返回</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token function\" style=\"color:#d73a49\">get_option</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'maintenance_mode_active'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">&amp;&amp;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">!</span><span class=\"token function\" style=\"color:#d73a49\">current_user_can</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'manage_options'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 维护模式关闭时，这里面的代码完全不会执行</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><br></span></code></pre></div></div>\n<p>性能开销极小，原因：</p>\n<ul>\n<li>get_option() 是WordPress核心函数，有内置缓存</li>\n<li>条件判断失败后立即返回</li>\n<li>没有额外的数据库查询</li>\n<li>没有额外的文件加载</li>\n<li>不会执行任何DOM操作</li>\n</ul>\n<p>所以你完全不用担心性能问题。这是一个非常轻量级的功能实现。</p>",
            "url": "https://frankelinli.github.io/blog/WordPress管理后台设置里添加维护模式开关",
            "title": "WordPress管理后台设置里添加维护模式开关",
            "summary": "- 维护模式下返回503状态码，对SEO更友好",
            "date_modified": "2024-12-21T18:17:00.000Z",
            "tags": []
        },
        {
            "id": "https://frankelinli.github.io/blog/文章编辑后台为某个块设置仅管理员可见",
            "content_html": "<p>WordPress文章后台编辑页面，选中一个块时，右侧出现设置仅管理员可见的选项</p>\n<p>完整步骤：</p>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"首先创建编辑器专用的js文件editor-customjs\">首先创建编辑器专用的JS文件：<code>editor-custom.js</code><a href=\"https://frankelinli.github.io/blog/%E6%96%87%E7%AB%A0%E7%BC%96%E8%BE%91%E5%90%8E%E5%8F%B0%E4%B8%BA%E6%9F%90%E4%B8%AA%E5%9D%97%E8%AE%BE%E7%BD%AE%E4%BB%85%E7%AE%A1%E7%90%86%E5%91%98%E5%8F%AF%E8%A7%81#%E9%A6%96%E5%85%88%E5%88%9B%E5%BB%BA%E7%BC%96%E8%BE%91%E5%99%A8%E4%B8%93%E7%94%A8%E7%9A%84js%E6%96%87%E4%BB%B6editor-customjs\" class=\"hash-link\" aria-label=\"首先创建编辑器专用的js文件editor-customjs的直接链接\" title=\"首先创建�编辑器专用的js文件editor-customjs的直接链接\">​</a></h3>\n<div class=\"language-javascript codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-javascript codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// editor-custom.js</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">domReady</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token arrow operator\" style=\"color:#393A34\">=&gt;</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 获取所有块类型</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">const</span><span class=\"token plain\"> blockTypes </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">blocks</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">getBlockTypes</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    blockTypes</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">forEach</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token parameter\">blockType</span><span class=\"token plain\"> </span><span class=\"token arrow operator\" style=\"color:#393A34\">=&gt;</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 扩展现有的块属性</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">blocks</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">unregisterBlockType</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">blockType</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">name</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">const</span><span class=\"token plain\"> settings </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token spread operator\" style=\"color:#393A34\">...</span><span class=\"token plain\">blockType</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token literal-property property\" style=\"color:#36acaa\">attributes</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token spread operator\" style=\"color:#393A34\">...</span><span class=\"token plain\">blockType</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">attributes</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token literal-property property\" style=\"color:#36acaa\">adminOnly</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token literal-property property\" style=\"color:#36acaa\">type</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'boolean'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token keyword module\" style=\"color:#00009f\">default</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token boolean\" style=\"color:#36acaa\">false</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token function-variable function\" style=\"color:#d73a49\">edit</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token parameter\">props</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token keyword\" style=\"color:#00009f\">const</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"> attributes</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> setAttributes </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> props</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 创建原始的编辑界面</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token keyword\" style=\"color:#00009f\">const</span><span class=\"token plain\"> originalEdit </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> blockType</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">edit</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token keyword control-flow\" style=\"color:#00009f\">return</span><span class=\"token plain\"> wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">createElement</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access maybe-class-name\">Fragment</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token keyword null nil\" style=\"color:#00009f\">null</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token function\" style=\"color:#d73a49\">originalEdit</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">props</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">createElement</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                        wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">blockEditor</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access maybe-class-name\">InspectorControls</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                        </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                        wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">createElement</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                            wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">components</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access maybe-class-name\">PanelBody</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                            </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"> </span><span class=\"token literal-property property\" style=\"color:#36acaa\">title</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'访问控制'</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                            wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">createElement</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                                wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">components</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access maybe-class-name\">ToggleControl</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                                </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                                    </span><span class=\"token literal-property property\" style=\"color:#36acaa\">label</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'仅管理员可见'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                                    </span><span class=\"token literal-property property\" style=\"color:#36acaa\">checked</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> attributes</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">adminOnly</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                                    </span><span class=\"token function-variable function\" style=\"color:#d73a49\">onChange</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token parameter\">value</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token arrow operator\" style=\"color:#393A34\">=&gt;</span><span class=\"token plain\"> </span><span class=\"token function\" style=\"color:#d73a49\">setAttributes</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"> </span><span class=\"token literal-property property\" style=\"color:#36acaa\">adminOnly</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> value </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                                </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                            </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                        </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">blocks</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">registerBlockType</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">blockType</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">name</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> settings</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><br></span></code></pre></div></div>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"在functionsphp中加载编辑器脚本处理前端显示逻辑\">在<code>functions.php</code>中加载编辑器脚本、处理前端显示逻辑：<a href=\"https://frankelinli.github.io/blog/%E6%96%87%E7%AB%A0%E7%BC%96%E8%BE%91%E5%90%8E%E5%8F%B0%E4%B8%BA%E6%9F%90%E4%B8%AA%E5%9D%97%E8%AE%BE%E7%BD%AE%E4%BB%85%E7%AE%A1%E7%90%86%E5%91%98%E5%8F%AF%E8%A7%81#%E5%9C%A8functionsphp%E4%B8%AD%E5%8A%A0%E8%BD%BD%E7%BC%96%E8%BE%91%E5%99%A8%E8%84%9A%E6%9C%AC%E5%A4%84%E7%90%86%E5%89%8D%E7%AB%AF%E6%98%BE%E7%A4%BA%E9%80%BB%E8%BE%91\" class=\"hash-link\" aria-label=\"在functionsphp中加载编辑器脚本处理前端显示逻辑的直接链接\" title=\"在functionsphp中加载编辑器脚本处理前端显示逻辑的直接链接\">​</a></h3>\n<div class=\"language-php codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-php codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 加载编辑器脚本</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'enqueue_block_editor_assets'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'my_editor_scripts'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">my_editor_scripts</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">wp_enqueue_script</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'my-editor-custom-js'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token function\" style=\"color:#d73a49\">get_stylesheet_directory_uri</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'/editor-custom.js'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">array</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'wp-blocks'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'wp-element'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'wp-editor'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'wp-components'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'1.0'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token constant boolean\" style=\"color:#36acaa\">true</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 处理前端显示逻辑</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">add_filter</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'render_block'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'filter_admin_only_blocks'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">10</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">2</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">filter_admin_only_blocks</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$block_content</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$block</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 如果块没有设置adminOnly属性，直接返回原内容</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token keyword\" style=\"color:#00009f\">empty</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$block</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'attrs'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">||</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">!</span><span class=\"token keyword\" style=\"color:#00009f\">isset</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$block</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'attrs'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'adminOnly'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$block_content</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 只有设置了adminOnly时才检查权限</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$block</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'attrs'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'adminOnly'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">&amp;&amp;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">!</span><span class=\"token function\" style=\"color:#d73a49\">current_user_can</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'manage_options'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">''</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$block_content</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><br></span></code></pre></div></div>\n<p>这个方案的特点：</p>\n<ol>\n<li>为所有块类型都添加了管理员可见选项</li>\n<li>在块的右侧面板中显示控制开关</li>\n<li>前端会自动过滤非管理员的访问</li>\n<li>代码组织清晰，维护方便</li>\n</ol>\n<p>使用方法：</p>\n<ol>\n<li>在编辑器中选择任意块</li>\n<li>在右侧面板中找到\"访问控制\"选项</li>\n<li>打开\"仅管理员可见\"开关即可</li>\n</ol>\n<p>这样就完成了所需功能的实现！</p>\n<hr>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"前端显示逻辑代码解释\">前端显示逻辑代码解释<a href=\"https://frankelinli.github.io/blog/%E6%96%87%E7%AB%A0%E7%BC%96%E8%BE%91%E5%90%8E%E5%8F%B0%E4%B8%BA%E6%9F%90%E4%B8%AA%E5%9D%97%E8%AE%BE%E7%BD%AE%E4%BB%85%E7%AE%A1%E7%90%86%E5%91%98%E5%8F%AF%E8%A7%81#%E5%89%8D%E7%AB%AF%E6%98%BE%E7%A4%BA%E9%80%BB%E8%BE%91%E4%BB%A3%E7%A0%81%E8%A7%A3%E9%87%8A\" class=\"hash-link\" aria-label=\"前端显示逻辑代码解释的直接链接\" title=\"前端显示逻辑代码解释的直接链接\">​</a></h3>\n<p>这个过滤器的工作方式是这样的：</p>\n<ol>\n<li>WordPress在渲染页面时，会<strong>逐个</strong>处理每个块</li>\n<li>对每个块，WordPress都会触发一次<code>render_block</code>过滤器</li>\n<li>我们的函数会被调用，但<strong>只处理当前块</strong>，不是循环</li>\n</ol>\n<p>页面内容：\n[块1] -&gt; 没有adminOnly属性 -&gt; 直接返回原内容\n[块2] -&gt; 有adminOnly=true -&gt; 检查权限\n[块3] -&gt; 没有adminOnly属性 -&gt; 直接返回原内容</p>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"当普通访客访问时该块不会输出到客户端浏览器\">当普通访客访问时，该块不会输出到客户端浏览器：<a href=\"https://frankelinli.github.io/blog/%E6%96%87%E7%AB%A0%E7%BC%96%E8%BE%91%E5%90%8E%E5%8F%B0%E4%B8%BA%E6%9F%90%E4%B8%AA%E5%9D%97%E8%AE%BE%E7%BD%AE%E4%BB%85%E7%AE%A1%E7%90%86%E5%91%98%E5%8F%AF%E8%A7%81#%E5%BD%93%E6%99%AE%E9%80%9A%E8%AE%BF%E5%AE%A2%E8%AE%BF%E9%97%AE%E6%97%B6%E8%AF%A5%E5%9D%97%E4%B8%8D%E4%BC%9A%E8%BE%93%E5%87%BA%E5%88%B0%E5%AE%A2%E6%88%B7%E7%AB%AF%E6%B5%8F%E8%A7%88%E5%99%A8\" class=\"hash-link\" aria-label=\"当普通访客访问时，该块不会输出到客户端浏览器：的直接链接\" title=\"当普通访客访问时，该块不会输出到客户端浏览器：的直接链接\">​</a></h3>\n<ol>\n<li>服务器端处理：</li>\n</ol>\n<div class=\"language-php codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-php codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$block</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'attrs'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'adminOnly'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">&amp;&amp;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">!</span><span class=\"token function\" style=\"color:#d73a49\">current_user_can</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'manage_options'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">''</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"> </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 返回空字符串</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><br></span></code></pre></div></div>\n<p>这里直接返回空字符串，意味着：</p>\n<ul>\n<li>这个块的HTML完全不会输出到页面源代码中</li>\n<li>访客的浏览器不会收到任何相关的HTML代码</li>\n<li>不会留下任何痕迹（注释等）</li>\n</ul>\n<p>举个例子，假设页面有3个段落块：</p>\n<div class=\"language-html codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-html codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">&lt;!-- 管理员看到的 --&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">p</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">第一段（公开）</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">p</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">p</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">第二段（仅管理员）</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">p</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">p</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">第三段（公开）</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">p</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">&lt;!-- 访客看到的 --&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">p</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">第一段（公开）</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">p</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;</span><span class=\"token tag\" style=\"color:#00009f\">p</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\">第三段（公开）</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&lt;/</span><span class=\"token tag\" style=\"color:#00009f\">p</span><span class=\"token tag punctuation\" style=\"color:#393A34\">&gt;</span><br></span></code></pre></div></div>\n<p>这样做的好处是：</p>\n<ol>\n<li>更安全 - 敏感内容完全不会传输到客户端</li>\n<li>更轻量 - 减少了页面大小</li>\n<li>无痕迹 - 查看源码也看不到任何相关信息</li>\n</ol>\n<h2 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"创建个仅管理员可见的区块\">创建个“仅管理员可见”的区块<a href=\"https://frankelinli.github.io/blog/%E6%96%87%E7%AB%A0%E7%BC%96%E8%BE%91%E5%90%8E%E5%8F%B0%E4%B8%BA%E6%9F%90%E4%B8%AA%E5%9D%97%E8%AE%BE%E7%BD%AE%E4%BB%85%E7%AE%A1%E7%90%86%E5%91%98%E5%8F%AF%E8%A7%81#%E5%88%9B%E5%BB%BA%E4%B8%AA%E4%BB%85%E7%AE%A1%E7%90%86%E5%91%98%E5%8F%AF%E8%A7%81%E7%9A%84%E5%8C%BA%E5%9D%97\" class=\"hash-link\" aria-label=\"创建个“仅管理员可见”的区块的直接链接\" title=\"创建个“仅管理员可见”的区块的直接链接\">​</a></h2>\n<p>啊,这是个非常聪明的解决方案!确实更简单高效。让我们创建一个\"管理员可见\"区块：</p>\n<div class=\"language-javascript codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-javascript codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// admin-only-block.js</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">blocks</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">registerBlockType</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string\" style=\"color:#e3116c\">'csrwiki/admin-only'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token literal-property property\" style=\"color:#36acaa\">title</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'仅管理员可见'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token literal-property property\" style=\"color:#36acaa\">icon</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'lock'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token literal-property property\" style=\"color:#36acaa\">category</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'common'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token literal-property property\" style=\"color:#36acaa\">description</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'此区块中的内容仅管理员可见'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function-variable function\" style=\"color:#d73a49\">edit</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token parameter\">props</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword control-flow\" style=\"color:#00009f\">return</span><span class=\"token plain\"> wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">createElement</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token string\" style=\"color:#e3116c\">'div'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"> </span><span class=\"token literal-property property\" style=\"color:#36acaa\">className</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'wp-block-csrwiki-admin-only'</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">createElement</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token string\" style=\"color:#e3116c\">'div'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"> </span><span class=\"token literal-property property\" style=\"color:#36acaa\">className</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'admin-only-header'</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token string\" style=\"color:#e3116c\">'🔒 仅管理员可见'</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">createElement</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token string\" style=\"color:#e3116c\">'div'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"> </span><span class=\"token literal-property property\" style=\"color:#36acaa\">className</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'admin-only-content'</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">createElement</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                        wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">blockEditor</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access maybe-class-name\">InnerBlocks</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                        </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                            </span><span class=\"token literal-property property\" style=\"color:#36acaa\">template</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                                </span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string\" style=\"color:#e3116c\">'core/paragraph'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                            </span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                            </span><span class=\"token literal-property property\" style=\"color:#36acaa\">allowedBlocks</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token boolean\" style=\"color:#36acaa\">true</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                            </span><span class=\"token literal-property property\" style=\"color:#36acaa\">templateLock</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token boolean\" style=\"color:#36acaa\">false</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                        </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                    </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function-variable function\" style=\"color:#d73a49\">save</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token parameter\">props</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword control-flow\" style=\"color:#00009f\">return</span><span class=\"token plain\"> wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">createElement</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token string\" style=\"color:#e3116c\">'div'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"> </span><span class=\"token literal-property property\" style=\"color:#36acaa\">className</span><span class=\"token operator\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token string\" style=\"color:#e3116c\">'wp-block-csrwiki-admin-only'</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">element</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token method function property-access\" style=\"color:#d73a49\">createElement</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">wp</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access\">blockEditor</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access maybe-class-name\">InnerBlocks</span><span class=\"token punctuation\" style=\"color:#393A34\">.</span><span class=\"token property-access maybe-class-name\">Content</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><br></span></code></pre></div></div>\n<div class=\"language-css codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-css codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">/* 在style.css中 */</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token selector class\" style=\"color:#00009f\">.wp-block-csrwiki-admin-only</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">border</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">2</span><span class=\"token unit\">px</span><span class=\"token plain\"> dashed </span><span class=\"token hexcode color\">#666</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">padding</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">20</span><span class=\"token unit\">px</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">background</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token hexcode color\">#f9f9f9</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token selector class\" style=\"color:#00009f\">.admin-only-header</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">color</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token hexcode color\">#666</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">font-size</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">14</span><span class=\"token unit\">px</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">margin-bottom</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">10</span><span class=\"token unit\">px</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">font-weight</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> bold</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">/* 编辑器中的样式 */</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token selector class\" style=\"color:#00009f\">.editor-styles-wrapper</span><span class=\"token selector\" style=\"color:#00009f\"> </span><span class=\"token selector class\" style=\"color:#00009f\">.wp-block-csrwiki-admin-only</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">border</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">2</span><span class=\"token unit\">px</span><span class=\"token plain\"> dashed </span><span class=\"token hexcode color\">#ff5722</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token property\" style=\"color:#36acaa\">background</span><span class=\"token punctuation\" style=\"color:#393A34\">:</span><span class=\"token plain\"> </span><span class=\"token hexcode color\">#fff3e0</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><br></span></code></pre></div></div>\n<div class=\"language-php codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-php codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 在functions.php中</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">register_admin_only_block</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">wp_register_script</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'admin-only-block'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token function\" style=\"color:#d73a49\">get_stylesheet_directory_uri</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'/js/admin-only-block.js'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">array</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'wp-blocks'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'wp-element'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'wp-editor'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">register_block_type</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'csrwiki/admin-only'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">array</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'editor_script'</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=&gt;</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'admin-only-block'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'render_callback'</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=&gt;</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'render_admin_only_block'</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'init'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'register_admin_only_block'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 渲染回调函数</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">render_admin_only_block</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$attributes</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$content</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token function\" style=\"color:#d73a49\">current_user_can</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'administrator'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$content</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">''</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"> </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 非管理员看不到内容</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><br></span></code></pre></div></div>\n<p>这个方案的优点：</p>\n<ol>\n<li>一次性解决问题，不用遍历检查每个块</li>\n<li>使用更直观，直接把需要保护的内容放在这个块里</li>\n<li>在编辑器中有明显的视觉提示（虚线边框）</li>\n<li>可以嵌套任何其他块</li>\n<li>维护更简单</li>\n</ol>\n<p>使用方法就是在编辑器中插入\"仅管理员可见\"块，然后在里面放入需要保护的内容即可。非管理员访问时这些内容会自动隐藏。</p>",
            "url": "https://frankelinli.github.io/blog/文章编辑后台为某个块设置仅管理员可见",
            "title": "文章编辑后台为某个块设置仅管理员可见",
            "summary": "WordPress文章后台编辑页面，选中一个块时，右侧出现设置仅管理员可见的选项",
            "date_modified": "2024-12-21T11:24:00.000Z",
            "tags": []
        },
        {
            "id": "https://frankelinli.github.io/blog/如何给wordpress文章设置自定义字段 is doc=true",
            "content_html": "<p>有几种设置自定义字段 is_doc 的方法：</p>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"使用wordpress原生自定义字段最简单\">使用WordPress原生自定义字段（最简单）：<a href=\"https://frankelinli.github.io/blog/%E5%A6%82%E4%BD%95%E7%BB%99wordpress%E6%96%87%E7%AB%A0%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%AE%9A%E4%B9%89%E5%AD%97%E6%AE%B5%20is%20doc=true#%E4%BD%BF%E7%94%A8wordpress%E5%8E%9F%E7%94%9F%E8%87%AA%E5%AE%9A%E4%B9%89%E5%AD%97%E6%AE%B5%E6%9C%80%E7%AE%80%E5%8D%95\" class=\"hash-link\" aria-label=\"使用WordPress原生自定义字段（最简单）：的直接链接\" title=\"使用WordPress原生自定义字段（最简单）：的直接链接\">​</a></h3>\n<div class=\"language-php codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-php codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 添加到functions.php，显示自定义字段框</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">show_is_doc_meta_box</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 确保自定义字段模块可见</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">add_post_type_support</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'post'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'custom-fields'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">add_meta_box</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc_meta_box'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\">           </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// ID</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'文档类型设置'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\">              </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 标题</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc_meta_box_callback'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\">  </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 回调函数</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'post'</span><span class=\"token plain\">                       </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 显示位置</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'add_meta_boxes'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'show_is_doc_meta_box'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// meta box的内容</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">is_doc_meta_box_callback</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$post</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">wp_nonce_field</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc_save'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc_nonce'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token variable\" style=\"color:#36acaa\">$value</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token function\" style=\"color:#d73a49\">get_post_meta</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$post</span><span class=\"token operator\" style=\"color:#393A34\">-&gt;</span><span class=\"token constant\" style=\"color:#36acaa\">ID</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token constant boolean\" style=\"color:#36acaa\">true</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">label</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">input type</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"checkbox\"</span><span class=\"token plain\"> name</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"is_doc\"</span><span class=\"token plain\"> value</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"true\"</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token plain\">php </span><span class=\"token function\" style=\"color:#d73a49\">checked</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$value</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'true'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        这是一篇文档类文章</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">label</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token plain\">php</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 保存meta值</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">save_is_doc_meta</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token operator\" style=\"color:#393A34\">!</span><span class=\"token keyword\" style=\"color:#00009f\">isset</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$_POST</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc_nonce'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">||</span><span class=\"token plain\"> </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token operator\" style=\"color:#393A34\">!</span><span class=\"token function\" style=\"color:#d73a49\">wp_verify_nonce</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$_POST</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc_nonce'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc_save'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token function\" style=\"color:#d73a49\">defined</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'DOING_AUTOSAVE'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">&amp;&amp;</span><span class=\"token plain\"> </span><span class=\"token constant\" style=\"color:#36acaa\">DOING_AUTOSAVE</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token operator\" style=\"color:#393A34\">!</span><span class=\"token function\" style=\"color:#d73a49\">current_user_can</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'edit_post'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token keyword\" style=\"color:#00009f\">isset</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$_POST</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token function\" style=\"color:#d73a49\">update_post_meta</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'true'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">else</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token function\" style=\"color:#d73a49\">delete_post_meta</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'save_post'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'save_is_doc_meta'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><br></span></code></pre></div></div>\n<p>效果：</p>\n<ul>\n<li>在文章编辑页面右侧会出现\"文档类型设置\"面板</li>\n<li>包含一个简单的复选框</li>\n<li>勾选后该文章就会被标记为文档类</li>\n</ul>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"使用quick-edit快速编辑方式\">使用Quick Edit（快速编辑）方式：<a href=\"https://frankelinli.github.io/blog/%E5%A6%82%E4%BD%95%E7%BB%99wordpress%E6%96%87%E7%AB%A0%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%AE%9A%E4%B9%89%E5%AD%97%E6%AE%B5%20is%20doc=true#%E4%BD%BF%E7%94%A8quick-edit%E5%BF%AB%E9%80%9F%E7%BC%96%E8%BE%91%E6%96%B9%E5%BC%8F\" class=\"hash-link\" aria-label=\"使用Quick Edit（快速编辑）方式：的直接链接\" title=\"使用Quick Edit（快速编辑）方式：的直接链接\">​</a></h3>\n<div class=\"language-php codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-php codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 在文章列表添加自定义列（已有）</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">add_is_doc_column</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$columns</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token variable\" style=\"color:#36acaa\">$new_columns</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">array</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">foreach</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$columns</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">as</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$key</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=&gt;</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$value</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token variable\" style=\"color:#36acaa\">$new_columns</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token variable\" style=\"color:#36acaa\">$key</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$value</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$key</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">===</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'title'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token variable\" style=\"color:#36acaa\">$new_columns</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token function\" style=\"color:#d73a49\">__</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'文档类型'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'csrwiki'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$new_columns</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">add_filter</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'manage_posts_columns'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'add_is_doc_column'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 显示自定义列的内容（已有）</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">show_is_doc_column_content</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$column</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$column</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">===</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token variable\" style=\"color:#36acaa\">$is_doc</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token function\" style=\"color:#d73a49\">get_post_meta</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token constant boolean\" style=\"color:#36acaa\">true</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$is_doc</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token keyword\" style=\"color:#00009f\">echo</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'&lt;span style=\"color: #2271b1;\"&gt;📚 文档&lt;/span&gt;'</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">else</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token keyword\" style=\"color:#00009f\">echo</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'&lt;span style=\"color: #666;\"&gt;📰 普通&lt;/span&gt;'</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'manage_posts_custom_column'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'show_is_doc_column_content'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">10</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">2</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 添加快速编辑字段</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">add_quick_edit_is_doc</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$column_name</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$post_type</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$column_name</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">!==</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">fieldset </span><span class=\"token keyword\" style=\"color:#00009f\">class</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"inline-edit-col-right\"</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">div </span><span class=\"token keyword\" style=\"color:#00009f\">class</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"inline-edit-col\"</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">label </span><span class=\"token keyword\" style=\"color:#00009f\">class</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"alignleft\"</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">input type</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"checkbox\"</span><span class=\"token plain\"> name</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"is_doc\"</span><span class=\"token plain\"> value</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"true\"</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">span </span><span class=\"token keyword\" style=\"color:#00009f\">class</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"checkbox-title\"</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token plain\">php </span><span class=\"token function\" style=\"color:#d73a49\">_e</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'标记为文档类文章'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'csrwiki'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">span</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">label</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">div</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">fieldset</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token plain\">php</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'quick_edit_custom_box'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'add_quick_edit_is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">10</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">2</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 保存快速编辑的值</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">save_quick_edit_is_doc</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 安全检查</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token function\" style=\"color:#d73a49\">defined</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'DOING_AUTOSAVE'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">&amp;&amp;</span><span class=\"token plain\"> </span><span class=\"token constant\" style=\"color:#36acaa\">DOING_AUTOSAVE</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token operator\" style=\"color:#393A34\">!</span><span class=\"token function\" style=\"color:#d73a49\">current_user_can</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'edit_post'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">return</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 保存is_doc值</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token keyword\" style=\"color:#00009f\">isset</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$_POST</span><span class=\"token punctuation\" style=\"color:#393A34\">[</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">]</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token function\" style=\"color:#d73a49\">update_post_meta</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'true'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">else</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token function\" style=\"color:#d73a49\">delete_post_meta</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token variable\" style=\"color:#36acaa\">$post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'save_post'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'save_quick_edit_is_doc'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\" style=\"display:inline-block\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 添加必要的JavaScript来处理快速编辑</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">add_quick_edit_js</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token plain\">script type</span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token string double-quoted-string\" style=\"color:#e3116c\">\"text/javascript\"</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">jQuery</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">document</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token function\" style=\"color:#d73a49\">ready</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">$</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 保存原始的inlineEditPost.edit函数</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token keyword\" style=\"color:#00009f\">var</span><span class=\"token plain\"> </span><span class=\"token variable\" style=\"color:#36acaa\">$wp_inline_edit</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> inlineEditPost</span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token plain\">edit</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 重写inlineEditPost.edit函数</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        inlineEditPost</span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token plain\">edit </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">id</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 调用原始的edit函数</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token variable\" style=\"color:#36acaa\">$wp_inline_edit</span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token function\" style=\"color:#d73a49\">apply</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">this</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> arguments</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 获取post ID</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token keyword\" style=\"color:#00009f\">var</span><span class=\"token plain\"> post_id </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">0</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token function\" style=\"color:#d73a49\">typeof</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">id</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">==</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'object'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                post_id </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> </span><span class=\"token function\" style=\"color:#d73a49\">parseInt</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">this</span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token function\" style=\"color:#d73a49\">getId</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">id</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 获取行数据并设置复选框</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token keyword\" style=\"color:#00009f\">if</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\">post_id </span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"> </span><span class=\"token number\" style=\"color:#36acaa\">0</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token keyword\" style=\"color:#00009f\">var</span><span class=\"token plain\"> edit_row </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> $</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'#edit-'</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">+</span><span class=\"token plain\"> post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token keyword\" style=\"color:#00009f\">var</span><span class=\"token plain\"> post_row </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> $</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'#post-'</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">+</span><span class=\"token plain\"> post_id</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 检查是否是文档</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token keyword\" style=\"color:#00009f\">var</span><span class=\"token plain\"> is_doc </span><span class=\"token operator\" style=\"color:#393A34\">=</span><span class=\"token plain\"> post_row</span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token function\" style=\"color:#d73a49\">find</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'.is_doc span'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token function\" style=\"color:#d73a49\">text</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token function\" style=\"color:#d73a49\">indexOf</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'文档'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">!==</span><span class=\"token plain\"> </span><span class=\"token operator\" style=\"color:#393A34\">-</span><span class=\"token number\" style=\"color:#36acaa\">1</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 设置复选框状态</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">                edit_row</span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token function\" style=\"color:#d73a49\">find</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'input[name=\"is_doc\"]'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token operator\" style=\"color:#393A34\">.</span><span class=\"token function\" style=\"color:#d73a49\">prop</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'checked'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> is_doc</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">            </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">/</span><span class=\"token plain\">script</span><span class=\"token operator\" style=\"color:#393A34\">&gt;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token operator\" style=\"color:#393A34\">&lt;</span><span class=\"token operator\" style=\"color:#393A34\">?</span><span class=\"token plain\">php</span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token function\" style=\"color:#d73a49\">add_action</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'admin_footer-edit.php'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'add_quick_edit_js'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><br></span></code></pre></div></div>\n<p>这将：</p>\n<ol>\n<li>在快速编辑面板中添加复选框</li>\n<li>正确保存快速编辑的值</li>\n<li>正确加载现有的is_doc状态</li>\n<li>处理JavaScript交互</li>\n</ol>\n<p>现在当你点击快速编辑时，应该可以看到：</p>\n<ul>\n<li>\"标记为文档类文章\"的复选框选项</li>\n<li>如果原本是文档类，复选框会自动勾选</li>\n<li>修改后可以正确保存</li>\n</ul>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"https://docu-1319658309.cos.ap-guangzhou.myqcloud.com/image-20241221095140527.png\" alt=\"image-20241221095140527\" class=\"img_ev3q\"></p>\n<p>这样就提供了两种设置方式：</p>\n<ol>\n<li>在编辑文章时通过右侧面板设置</li>\n<li>在文章列表页通过快速编辑设置</li>\n</ol>\n<p>使用建议：</p>\n<ul>\n<li>\n<p>新建文章时使用右侧面板设置</p>\n</li>\n<li>\n<p>单独/批量修改时使用快速编辑功能</p>\n</li>\n<li>\n<p>两种方式都很方便，选择你习惯的即可</p>\n</li>\n<li></li>\n</ul>\n<h3 class=\"anchor anchorWithStickyNavbar_LWe7\" id=\"我的文档类型设置面板为何在编辑页面底部我想放到右侧\">我的文档类型设置\"面板为何在编辑页面底部？我想放到右侧<a href=\"https://frankelinli.github.io/blog/%E5%A6%82%E4%BD%95%E7%BB%99wordpress%E6%96%87%E7%AB%A0%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%AE%9A%E4%B9%89%E5%AD%97%E6%AE%B5%20is%20doc=true#%E6%88%91%E7%9A%84%E6%96%87%E6%A1%A3%E7%B1%BB%E5%9E%8B%E8%AE%BE%E7%BD%AE%E9%9D%A2%E6%9D%BF%E4%B8%BA%E4%BD%95%E5%9C%A8%E7%BC%96%E8%BE%91%E9%A1%B5%E9%9D%A2%E5%BA%95%E9%83%A8%E6%88%91%E6%83%B3%E6%94%BE%E5%88%B0%E5%8F%B3%E4%BE%A7\" class=\"hash-link\" aria-label=\"我的文档类型设置&quot;面板为何在编辑页面底部？我想放到右侧的直接链接\" title=\"我的文档类型设置&quot;面板为何在编辑页面底部？我想放到右侧的直接链接\">​</a></h3>\n<p>要将文档类型设置面板移到右侧，需要在 <code>add_meta_box</code> 函数中设置正确的 <code>context</code> 参数。修改代码如下：</p>\n<div class=\"language-php codeBlockContainer_Ckt0 theme-code-block\" style=\"--prism-color:#393A34;--prism-background-color:#f6f8fa\"><div class=\"codeBlockContent_QJqH\"><pre tabindex=\"0\" class=\"prism-code language-php codeBlock_bY9V thin-scrollbar\" style=\"color:#393A34;background-color:#f6f8fa\"><code class=\"codeBlockLines_e6Vv\"><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token keyword\" style=\"color:#00009f\">function</span><span class=\"token plain\"> </span><span class=\"token function-definition function\" style=\"color:#d73a49\">show_is_doc_meta_box</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token plain\"> </span><span class=\"token punctuation\" style=\"color:#393A34\">{</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">add_post_type_support</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'post'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\"> </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'custom-fields'</span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token function\" style=\"color:#d73a49\">add_meta_box</span><span class=\"token punctuation\" style=\"color:#393A34\">(</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc_meta_box'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\">           </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// ID</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'文档类型设置'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\">              </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 标题</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'is_doc_meta_box_callback'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\">  </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 回调函数</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'post'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\">                      </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 显示位置</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'side'</span><span class=\"token punctuation\" style=\"color:#393A34\">,</span><span class=\"token plain\">                      </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 设置为side表示显示在右侧</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">        </span><span class=\"token string single-quoted-string\" style=\"color:#e3116c\">'high'</span><span class=\"token plain\">                       </span><span class=\"token comment\" style=\"color:#999988;font-style:italic\">// 优先级设为high，让它显示在较上方</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\">    </span><span class=\"token punctuation\" style=\"color:#393A34\">)</span><span class=\"token punctuation\" style=\"color:#393A34\">;</span><span class=\"token plain\"></span><br></span><span class=\"token-line\" style=\"color:#393A34\"><span class=\"token plain\"></span><span class=\"token punctuation\" style=\"color:#393A34\">}</span><br></span></code></pre></div></div>\n<p>关键变化：</p>\n<ol>\n<li>添加了第5个参数 <code>'side'</code> - 指定显示位置在右侧栏</li>\n<li>添加了第6个参数 <code>'high'</code> - 设置较高优先级</li>\n</ol>\n<p>这样修改后，\"文档类型设置\"面板就会：</p>\n<ul>\n<li>显示在右侧栏中</li>\n<li>位置相对靠上</li>\n<li>与其他右侧设置面板保持一致的风格</li>\n</ul>",
            "url": "https://frankelinli.github.io/blog/如何给wordpress文章设置自定义字段 is doc=true",
            "title": "如何给wordpress文章设置自定义字段 is doc=true",
            "summary": "有几种设置自定义字段 is_doc 的方法：",
            "date_modified": "2024-12-21T09:47:00.000Z",
            "tags": []
        }
    ]
}