Hexoでトップページを表示した時、複数の記事の全文がだらだらと表示されているのは見づらいと思い、冒頭部分を抜粋した概要表示にしてみた。
やり方は簡単で、記事ソースの適当な箇所に<!-- more -->というタグを挿入するだけ。

WordPressやMovable Typeでは、200文字など決まった文字数で自動的に抜粋してくれたりもするが、Hexoでの方法は分からないので手動で挿入した。

タグを挿入すると<!-- more -->より前の部分と続きを読むためのリンクの表示になる。
リンクの文言「Read More」はHexo作業フォルダ直下の_config.ymlではなく、themes/landscape/_config.ymlなどテーマ毎の_config.ymlで変更出来る。

Octopressの場合は_config.ymlのexcerpt_link:でリンクの文言を変えられる。
また_config.ymlのexcerpt_link:で、抜粋するためのタグ自体を<!-- more -->から別のものに変更出来るようだ。

ーー
(追記)
概要表示にはしてみたが、全文表示の方が都合の良いことがあったので、あとで全ての記事から<!-- more -->タグを削除した。
_postsフォルダで端末を開き、下記コマンドですべての.mdファイルから<!-- more -->を一括削除。

$ perl -p -i.bak -e 's/<!-- more -->//g' *.md
(すべての.mdファイルに拡張子.bakをつけてバックアップを取り、ファイル内の<!-- more -->を削除)

<!-- more -->が正常に削除されたことを確認後、.bakファイルを一括削除した。

$ find . -type f -name "*.bak" -delete
(拡張子が.bakのファイルをカレントディレクトリで一括削除)
表示   このエントリーをはてなブックマークに追加

Comments

2014年11月29日