_config.ymlまたは代替設定ファイルでサイトの設定を変更できます。
サイト
| 設定 | 説明 |
|---|---|
title |
ウェブサイトのタイトル |
subtitle |
ウェブサイトのサブタイトル |
description |
ウェブサイトの説明 |
keywords |
ウェブサイトのキーワード。 複数の値をサポート。 |
author |
あなたの名前 |
language |
ウェブサイトの言語。 2文字のISO-639-1コードまたはそのバリアントを使用。 デフォルトはen。 |
timezone |
ウェブサイトのタイムゾーン。 デフォルトではコンピューターの設定を使用。 利用可能なタイムゾーンのリストはこちら。 例えばAmerica/New_York、Japan、UTCなど。 |
URL
| 設定 | 説明 | デフォルト |
|---|---|---|
url |
http://またはhttps://で始まる必要があります。 |
|
root |
ウェブサイトのルートディレクトリ | url's pathname |
permalink |
記事のパーマリンク形式 | :year/:month/:day/:title/ |
permalink_defaults |
パーマリンクの各セグメントのデフォルト値 | |
pretty_urls |
permalink変数をプリティURLに書き換え |
|
pretty_urls.trailing_index |
末尾のindex.htmlを削除する場合はfalseに設定 |
true |
pretty_urls.trailing_html |
末尾の.htmlを削除する場合はfalseに設定(index.htmlの末尾には適用されない) |
true |
サブディレクトリ内のウェブサイトウェブサイトがサブディレクトリ内にある場合(例:
http://example.org/blog)は、urlにhttp://example.org/blogを設定し、rootを/blog/に設定します。
例:
# e.g. page.permalink is http://example.com/foo/bar/index.html |
ディレクトリ
| 設定 | 説明 | デフォルト |
|---|---|---|
source_dir |
ソースフォルダ。 コンテンツが保存される場所 | source |
public_dir |
パブリックフォルダ。 静的サイトが生成される場所 | public |
tag_dir |
タグディレクトリ | tags |
archive_dir |
アーカイブディレクトリ | archives |
category_dir |
カテゴリディレクトリ | categories |
code_dir |
コードを含むディレクトリ(source_dirのサブディレクトリ) |
downloads/code |
i18n_dir |
i18nディレクトリ | :lang |
skip_render |
レンダリングせずにpublicに直接コピーされるパス。 パスのマッチングにglob表現を使用できます。 |
例:
skip_render: "mypage/**/*" |
執筆
| 設定 | 説明 | デフォルト |
|---|---|---|
new_post_name |
新しい記事のファイル名形式 | :title.md |
default_layout |
デフォルトのレイアウト | post |
titlecase |
タイトルをタイトルケースに変換するか? | false |
external_link |
外部リンクを新しいタブで開くか? | |
external_link.enable |
外部リンクを新しいタブで開くか? | true |
external_link.field |
site全体に適用するか? postのみか? |
site |
external_link.exclude |
ホスト名を除外。 該当する場合はサブドメインを指定、wwwも含む |
[] |
filename_case |
ファイル名を 1小文字; 2大文字 に変換 |
0 |
render_drafts |
下書きを表示するか? | false |
post_asset_folder |
アセットフォルダを有効にするか? | false |
relative_link |
リンクをルートフォルダに対して相対的にするか? | false |
future |
未来の記事を表示するか? | true |
syntax_highlighter |
コードブロックのシンタックスハイライト設定。 使い方はシンタックスハイライトセクションを参照。 | highlight.js |
highlight |
コードブロックのシンタックスハイライト設定。 使い方はHighlight.jsセクションを参照。 | |
prismjs |
コードブロックのシンタックスハイライト設定。 使い方はPrismJSセクションを参照。 |
ホームページの設定
| 設定 | 説明 | デフォルト |
|---|---|---|
index_generator |
hexo-generator-indexによる記事のアーカイブ生成 | |
index_generator.path |
ブログのインデックスページのパス | '' |
index_generator.per_page |
1ページあたりの記事数 | 10 |
index_generator.order_by |
記事の並び順。 デフォルトでは日付降順(新しいものから古いものへ)。 | -date |
index_generator.pagination_dir |
URL形式。 ページネーション設定を参照。 | page |
カテゴリー&タグ
| 設定 | 説明 | デフォルト |
|---|---|---|
default_category |
デフォルトのカテゴリー | uncategorized |
category_map |
カテゴリースラッグを上書き | |
tag_map |
タグスラッグを上書き |
例:
category_map: |
日付/時刻形式
Hexoは日付の処理にMoment.jsを使用します。
| 設定 | 説明 | デフォルト |
|---|---|---|
date_format |
日付形式 | YYYY-MM-DD |
time_format |
時刻形式 | HH:mm:ss |
updated_option |
Front Matterで提供されていない場合に使用するupdatedの値 |
mtime |
updated_option
updated_optionはFront Matterでupdatedが指定されていない場合にupdatedの値を制御します:
mtime:updatedとしてファイルの更新日を使用します。 これはHexo 3.0.0以降のデフォルトの挙動です。date:updatedとしてdateを使用します。 一般的にファイルの変更日が異なる可能性があるGitワークフローで使用されます。empty:updatedが指定されていない場合は単純に削除します。 多くののテーマやプラグインと互換性がないかもしれません。
use_date_for_updatedはv7.0.0で削除されました。 代わりにupdated_option: 'date'を使用してください。
ページネーション
| 設定 | 説明 | デフォルト |
|---|---|---|
per_page |
各ページに表示される記事の数。 0はページネーション無効化 |
10 |
pagination_dir |
URL形式 | page |
例:
pagination_dir: 'page' |
拡張機能
| 設定 | 説明 |
|---|---|
theme |
テーマ名。 falseはテーマを無効にします |
theme_config |
テーマ設定。 このキーの配下のカスタムテーマ設定は、テーマのデフォルトを上書きします。 |
deploy |
デプロイ設定 |
meta_generator |
メタジェネレータタグ。 falseはタグの注入を無効にします。 |
ファイルやフォルダーを含める/除外する
特定のファイルやフォルダーを明示的に処理または無視するために、以下のオプションを使用します。 パスの指定にはglob表現が使えます。
includeおよびexcludeオプションはsource/フォルダーにのみ適用され、ignoreオプションはすべてのフォルダーに適用されます。
| 設定 | 説明 |
|---|---|
include |
隠しファイル(名前がアンダースコアで始まるファイルやフォルダーを含む、例外あり*)を含める |
exclude |
ファイルやフォルダーを除外 |
ignore |
ファイルやフォルダーを無視 |
例:
# Include/Exclude Files/Folders |
リスト内の値はシングル/ダブルクォートで囲む必要があります。
include:およびexclude:はthemes/フォルダーには適用されません。 代わりにignore:を使用するか、ファイル/フォルダー名にアンダースコアを追加して除外してください。
* source/_postsフォルダーは例外です。このフォルダー内で名前がアンダースコアで始まるファイルやフォルダーは依然として無視されます。 ここでinclude:ルールを使用することは推奨されません。
代替設定の使用
hexoコマンドに--configフラグを追加し、代替のYAMLまたはJSON設定ファイルへのパスを指定することで、カスタム設定ファイルパスを指定できます。 または、複数のYAMLまたはJSONファイルのカンマ区切りリスト(スペースなし)を指定できます。
# use 'custom.yml' in place of '_config.yml' |
複数のファイルを指定するとすべての設定ファイルが結合され、マージされた設定が_multiconfig.ymlに保存されます。 この場合、後に指定された値が優先されます。 任意の数のJSONおよびYAMLファイルで、任意の深さのオブジェクトで動作します。 リスト内にスペースを含めることはできません。
たとえば、上記の例ではcustom.ymlにfoo: barが含まれているが、custom2.jsonに"foo": "dinosaur"が含まれている場合、_multiconfig.ymlにはfoo: dinosaurが含まれます。
代替テーマ設定
Hexoテーマは独立したプロジェクトであり、それぞれ別の_config.ymlファイルを持っています。
テーマをフォークしてカスタムバージョンを維持する代わりに、他の場所から設定を行うことができます:
サイトのプライマリ設定ファイル内のtheme_configから
Hexo 2.8.2以降でサポート
# _config.yml |
# themes/my-theme/_config.yml |
テーマ設定の結果:
{ |
専用の_config.[theme].ymlファイルから
Hexo 5.0.0以降でサポート
ファイルはサイトフォルダ内に配置され、ymlおよびjsonがサポートされています。 _config.yml内のthemeが設定されている必要があります。
# _config.yml |
# _config.my-theme.yml |
# themes/my-theme/_config.yml |
テーマ設定結果:
{ |
テーマ設定を1か所に保存することを強くお勧めします。 しかし、テーマ設定を別々に保存する必要がある場合は、それらの設定の優先順位を把握しておく必要があります: マージ中にサイトのプライマリ設定ファイル内の
theme_configが最も高い優先順位で、次に専用のテーマ設定ファイルが続きます。 テーマディレクトリ下の_config.ymlファイルの優先順位は最も低いです。