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);
});