環境

build(やserve)引数で、Jekyllの環境と値を指定できます。その後、ビルドはこの値をコンテンツの条件付きステートメントに適用します。

例えば、コードで次の条件を設定したとします。

{% if jekyll.environment == "production" %}
   {% include disqus.html %}
{% endif %}

Jekyllサイトを構築するとき、if内のコンテンツは、次のようにビルドコマンドでproductionenvironmentを指定しなければ実行されません。

JEKYLL_ENV=production jekyll build

environmentの値を指定することで、特定の場合のみコンテンツを利用可能にすることができます。

JEKYLL_ENVのデフォルト値は、developmentです。従って、ビルド引数からJEKYLL_ENVを省略すると、デフォルト値はJEKYLL_ENV=developmentになります。{% if jekyll.environment == "development" %}タグ内の全てのコンテンツは自動的にビルド時に表示されます。

environment値は(developmentproduction以外は)好きなものを使用できます。DisqusコメントフォームやGoogle Analyticsを含む開発時には隠したい要素があるでしょう。”Edit me in GitHub”ボタンは開発環境では表示して、製品環境では含まないようにしたいのではないでしょうか。

ビルドコマンドのオプションでの指定で、ある環境から別の環境への変更時に、設定ファイル内の値を変更する必要がありません。

環境に応じて設定の一部を切り替えるには、ビルドコマンドオプションを使用します。例えば--config _config.yml、_config_development.ymlです。 後のファイルの設定は、前のファイルの設定を上書きします。