プラグイン

Hexoは強力なプラグインシステムを備えており、コアモジュールのソースコードを変更することなく簡単に機能を拡張できます。Hexoには2種類のプラグインがあります。

スクリプト

プラグインが比較的単純な場合は、スクリプトを使用することをお勧めします。JavaScriptファイルをscriptsフォルダに配置するだけで、Hexoは初期化中にそれらをロードします。

プラグイン

コードが複雑な場合、またはNPMレジストリに公開する場合は、プラグインを使用することをお勧めします。まず、node_modulesフォルダにフォルダを作成します。このフォルダの名前はhexo-で始まる必要があります。そうでない場合、Hexoはそれを無視します。

新しいフォルダには、少なくとも2つのファイルが含まれている必要があります。1つは実際のJavaScriptコードを含むファイル、もう1つはプラグインの目的を説明し、その依存関係を設定するpackage.jsonファイルです。

.
├── index.js
└── package.json

少なくとも、package.jsonnameversion、およびmainエントリを設定する必要があります。例えば

package.json
{
"name": "hexo-my-plugin",
"version": "0.0.1",
"main": "index"
}

また、Hexoがプラグインを検出してロードするために、Hexoインスタンスのルートpackage.jsonにプラグインを依存関係としてリストする必要があります。

ツール

Hexoが提供する公式ツールを活用して開発を加速できます。

公開

プラグインの準備ができたら、プラグインリストに公開して、他の人が使い始めるようにすることを検討してください。独自のプラグインの公開は、ドキュメントの更新と非常に似ています。

  1. hexojs/siteをフォークする

  2. リポジトリをコンピュータにクローンし、依存関係をインストールします。

    $ git clone https://github.com/<username>/site.git
    $ cd site
    $ npm install
  3. source/_data/plugins/に新しいyamlファイルを作成し、プラグイン名をファイル名として使用します。

  4. source/_data/plugins/<your-plugin-name>.ymlを編集し、プラグインを追加します。例えば

    description: Server module for Hexo.
    link: https://github.com/hexojs/hexo-server
    tags:
    - official
    - server
    - console
  5. ブランチをプッシュします。

  6. プルリクエストを作成し、変更を記述します。