assembleで出し分け
今、assembleを使ってページ作ってるのですが、よくあるロゴのタグをトップは<h1></h1>
にして他のページは<p></p>
にしようと思った時、どうすればいいのかちょっと困ったけど、assembleのページに簡単なやり方が載ってた。
トップページ
---
title: ページのタイトルです
keyword: キーワード1,キーワード2,キーワード3,キーワード4
description: ページのdescriptionが入ります。
layout: default.hbs
~~pagetype: toppage~~(2014.1.19修正)
is_toppage: true
---
その他のページ
---
title: ページのタイトルです
keyword: キーワード1,キーワード2,キーワード3,キーワード4
description: ページのdescriptionが入ります。
layout: default.hbs
~~pagetype: subpage~~(2014.1.19修正)
is_toppage: false
---
みたいにハッシュを追加して(今回はpagetype:hogehoge)、テンプレート部分で
<header>
{\{#if pagetype toppage}}
<h1>ロゴです</h1>
{\{else}}
<p><a href="/index.html">ロゴです</a></p>
{\{/is}}
</header>
(実際に使う場合は、[]は削除で。)
と書けば、きっちり出し分けされました。
でも、別にこんな感じで<h1></h1>
タグを出し分ける必要ってあんまりないのかな、、コンテンツ部分は<article></article>
で囲って、その中で<h1></h1>
タグ使えば別に問題ないのかな、、と思いつつどこかで使うところがあるかもしれないということで。。
他にもっと適切な方法があるような気もしますが、handlebarsややこしい。。。
追記(2014.1.19)
これで大丈夫と思ってたら、buildしたらエラーになってbuildしてくれなかった。 どうやら記述が間違っていたみたい。
で記載されていたように、true,falseにすればOKだった。
YAML front matterで、if,elseしたい場合は、true,falseでしないといけないのか。。。? 我ながら勉強不足は困る。。