WEB・アプリ開発

middleman-blogでyearやmonthやdayやtagページの生成をしない方法

“middleman build --verbose” 実行時にエラーが発生

mddleman build --verboseで下のようなエラーが出ました。


エラーの全量のログはこちら
middleman-blogのバージョンはv3.6.0.beta.2です。

原因

middleman-blogは年ごと、月ごと、日ごとの一覧ページを自動的に生成します。ただ、私の場合は月ごとのみしか必要としていないので、calendar.slimを月ごと専用に変更してしまっています。
それなのに、middleman-blogは年ごとのページを生成しようとし、calendar.slimでmonthという変数が呼ばれてしまい、エラーが発生するということです。

スポンサーリンク

解決策

現状のバージョンだとできないのですが、まだリリースバージョンにはマージされていないpull requestでそれぞれのページの生成をしないようにする機能が追加されました。

Add option to disable generating year, month, day or tag pages #235

これは後々リリースされると思いますが、現時点でも以下のようにすると使うことができます。

Gemfileの修正

middleman-blogの行を以下のように修正します。上記のpull requestのバージョンを直接 指定しています。


そしてbundle installをコマンドラインで実行します。

config.rbに追加

middleman-blogの設定をする箇所で、以下のように生成を止めたいページに対して、falseを指定します。


これでエラーは発生しなくなります。