API

このドキュメントではAPIについてより詳細な情報を提供します。 Hexo のソースコードを変更したり新しいプラグインを作成する方に特に役立ちます。 Hexo の基本的な使用法に興味がある場合は、代わりにドキュメントを参照してください。

このドキュメントは Hexo 3以降にのみ有効です。

初期化

まず、 Hexo インスタンスを作成する必要があります。 新しいインスタンスは2つの引数を取ります: ウェブサイトのルートディレクトリbase_dirと、初期化オプションを含むオブジェクトです。 次に、このインスタンスのinitメソッドを呼び出して初期化します。 これにより Hexo は設定とプラグインを読み込みます。

var Hexo = require("hexo");
var hexo = new Hexo(process.cwd(), {});

hexo.init().then(function () {
// ...
});
オプション 説明 デフォルト
debug デバッグモードを有効にします。 端末にデバッグメッセージを表示し、ルートディレクトリにdebug.logを保存します。 false
safe セーフモードを有効にします。 プラグインを読み込みません。 false
silent サイレントモードを有効にします。 端末にメッセージを表示しません。 false
config 設定ファイルのパスを指定します。 _config.yml
draft / drafts 下書きを記事リストに追加します。
例: hexo.locals.get('posts')を使用するとき
_config.ymlのrender_drafts

ファイルの読み込み

Hexo はファイルを読み込むためにloadwatchの2つのメソッドを提供します。 loadsourceフォルダ内の全ファイルとテーマデータを読み込むために使用されます。 watchloadと同じことを行いますが、ファイル変更の監視を継続的に開始します。

両方のメソッドはファイルリストを読み込み、それらを対応するプロセッサに渡します。 全てのファイルが処理された後、ジェネレーターを呼び出してルートを作成します。

hexo.load().then(function () {
// ...
});

hexo.watch().then(function () {
// 後で hexo.unwatch() を呼び出して監視を停止できます。
});

コマンドの実行

Hexoインスタンスのcallメソッドを使用することで、任意のコンソールコマンドを明示的に呼び出すことができます。 この呼び出しには2つの引数があります。 コンソールコマンドの名前と、オプション引数です。 異なるコンソールコマンドには異なるオプションが利用可能です。

hexo.call("generate", {}).then(function () {
// ...
});
hexo.call("list", { _: ["post"] }).then(function () {
// ...
});

終了

コンソールコマンドの成功または失敗の完了時には、exitメソッドを呼び出すべきです。 これによりHexoは正常に終了し、データベースの保存など重要な処理を終えることができます。

hexo
.call("generate")
.then(function () {
return hexo.exit();
})
.catch(function (err) {
return hexo.exit(err);
});