<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 過濾器(Filter) 過濾器用于修改特定文件,Hexo 將這些文件依序傳給過濾器,而過濾器可以針對文件進行修改,這個概念借鑒自 [WordPress](http://codex.wordpress.org/Plugin_API#Filters)。 ## 概要 ``` hexo.extend.filter.register(type, function{}, priority); ``` 您可以指定過濾器的優先級 `priority`,`priority` 值越低,過濾器會越早執行,默認的 `priority` 是 10。 ## 執行過濾器 ``` hexo.extend.filter.exec(type, data, options);hexo.extend.filter.execSync(type, data, options); ``` | 選項 | 描述 | | --- | --- | | `context` | Context | | `args` | 參數。必須為數組。 | `data` 會作為第一個參數傳入每個過濾器,而您可以在過濾器中通過返回值改變下一個過濾器中的 `data`,如果什么都沒有返回的話則會保持原本的 `data`。您還可以使用 `args` 指定過濾器的其他參數。舉例來說: ``` hexo.extend.filter.register('test'functiondata, arg1, arg2{ // data === 'some data' // arg1 === 'foo' // arg2 === 'bar' return'something' });hexo.extend.filter.register('test'functiondata, arg1, arg2{ // data === 'something' });hexo.extend.filter.exec('test''some data' args: ['foo''bar' }); ``` 您也可以使用以下方法來執行過濾器: ``` hexo.execFilter(type, data, options);hexo.execFilterSync(type, data, options); ``` ## 移除過濾器 ``` hexo.extend.filter.unregister(type, filter); ``` ## 過濾器列表 以下是 Hexo 所使用的過濾器。 ### before_post_render 在文章開始渲染前執行。您可以參考 [文章渲染](posts.html#渲染) 以了解執行順序。 舉例來說,把標題轉為小寫: ``` hexo.extend.filter.register('before_post_render'functiondata{ data.title = data.title.toLowerCase(); return }); ``` ### after_post_render 在文章渲染完成后執行。您可以參考 [文章渲染](posts.html#渲染) 以了解執行順序。 舉例來說,把 `@username` 取代為 Twitter 的開發者鏈接。 ``` hexo.extend.filter.register('after_post_render'functiondata{ data.content = data.content.replace(/@(\d+)/'<a href="http://twitter.com/$1">#$1</a>' return }); ``` ### before_exit 在 Hexo 即將結束時執行,也就是在 `hexo.exit` 被調用后執行。 ``` hexo.extend.filter.register('before_exit'function{ // ... }); ``` ### before_generate 在生成器解析前執行。 ``` hexo.extend.filter.register('before_generate'function{ // ... }); ``` ### after_generate 在生成器解析后執行。 ``` hexo.extend.filter.register('after_generate'function{ // ... }); ``` ### template_locals 修改模板的 [局部變量](../docs/variables.html)。 舉例來說,在模板的局部變量中新增當前時間: ``` hexo.extend.filter.register('template_locals'functionlocals{ locals.now = Date return }); ``` ### after_init 在 Hexo 初始化完成后執行,也就是在 `hexo.init` 執行完成后執行。 ``` hexo.extend.filter.register('after_init'function{ // ... }); ``` ### new_post_path 用來決定新建文章的路徑,在建立文章時執行。 ``` hexo.extend.filter.register('new_post_path'functiondata, replace{ // ... }); ``` ### post_permalink 用來決定文章的永久鏈接。 ``` hexo.extend.filter.register('post_permalink'functiondata{ // ... }); ``` ### after_render 在渲染后執行,您可以參考 [渲染](rendering.html#after_render_過濾器) 以了解更多信息。 ### server_middleware 新增服務器的 Middleware。`app` 是一個 [Connect](https://github.com/senchalabs/connect) 實例。 舉例來說,在響應頭中新增 `X-Powered-By: Hexo`。 ``` hexo.extend.filter.register('server_middleware'functionapp{ app.use(functionreq, res, next{ res.setHeader('X-Powered-By''Hexo' next(); });}); ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看