自身はRSS等を使う事が無いので必要性がどれ位あるのか不明だけれど、 折角なので作成したブログをフィードで通知出来る様にしてみる。 登録する人が1人でも居れば有用なので。
プラグインの追加
フィードの利用にはHexo公式が提供しているhexo-generator-feedを利用する。 Hexoのルートディレクトリでnpmコマンドを実行する事で導入可能。
npm install hexo-generator-feed --save
導入後、Hexoの設定_config.yml
に追加の設定を行う事でフィードの配信準備が整う。 デフォルトでフィードの配信機能は有効になっている為、 hexo generate
でAtomのフィードが生成される。
設定
基本的な追加設定項目は以下
feed:
enable: true
type: atom
path: atom.xml
limit: 20
hub:
content:
content_limit: 140
content_limit_delim: ' '
order_by: -date
icon: icon.png
autodiscovery: true
template:
enable
hexo-generator-feedを有効にするかの設定、 デフォルト値はtrue。 特別な理由がなければfalseにする必要は無い。
type
rssかatomのどちらか、または双方でフィードを配信するか設定する。 双方使う場合は以下の様に記載。
type:
- atom
- rss2
path
rss,atomの生成されるxmlファイルのパスを指定する。 デフォルトではatom.xml、rss2.xmlとなっている。 使用しているテーマによって格納するxmlファイルの場所が異なる場合ここで指定する。 ちなみにパスはtypeで指定した順に使われるのでatomとrss2両方を使用する設定にして、尚且つatomが先にされている場合、atomの格納パスから指定する。
limit
フィード内に含める投稿の数を指定。 無制限にする場合は0
かfalse
を指定する。
hub
PubSubHubbubに新規投稿を通知する場合は指定する。 (使用しない場合は空のままにする)
content
投稿内容全体をフィードに含める場合はtrue
を設定する。
content_limit
フィードの概要に含まれるコンテンツ内容の長さを指定する。 contentがfalseで投稿にカスタム設定が含まれていない場合に使用される。
content_limit_delim
content_limitを使って投稿内容を短くする場合、特定の区切り記号を使ってカットしたい場合ここに任意の区切り起動を設定する。
order_by
フィードの並び順。 デフォルトでは日付でソートされる。
icon
カスタムフィードアイコン、デフォルトでは設定されたメールアドレスと関連付けられているGravatarアイコンが使用される。
autodiscovery
フィードの自動検出機能を有効にする。 デフォルトでは有効。 リポジトリの説明を見たがイマイチ意味が分からなかった。
template
生成されるatom,rss2のxmlファイルの形をテンプレートに沿ってカスタマイズする事が可能。 利用する場合はテンプレートのパスを指定する。 path
同様、type
で指定されているフィード順にパス指定を行う。