僕なりに少しづつわかってきましたので、忘れないうちにメモ
基本として、bloggerのテンプレートは以下の要素で出来ています。
HTML
CSS
Javascript
Bloggerのタグ
このうち、特にBloggerのタグがくせ者で本当にわかりづらい。
僕が理解出来た範囲で書いていってみます。
間違っていたら許してください。
まずは、if文の理解から。
<b:if cond='data:blog.pageType != "item"'>
テンプレートから、HTML編集ボタンを押していただくと、たぶんほとんどの方が目にするであろうこの文。
まず、
<b:if
この
<b:
ではじまるやつがBloggerが独自に用意したタグみたいです。
で、プログラムをやっていた方ならすぐにわかるかと思いますが、
<b:if ◯◯=△△>
と言うのは、
もしも、◯◯が△△だったらこの処理をしなさい
と言う命令になります。
これは必ず終わりとセットになっていて
<b:if ◯◯=△△> 処理 </b:if>
で
もしも、◯◯が△△だったらこの処理をしなさい。おしまい。
となります。
また、違ったらというオプションを付けることも可能です。
<b:if ◯◯=△△> 処理1 <b:else/> 処理2 </b:if>
もしも、◯◯が△△だったらこの処理1をしなさい。◯◯が△△じゃなかったら処理2をしなさい。おしまい。
となります。
ここまでは、たぶんなんとかく理解できるのではないでしょうか?
ちんたらしていますか?
すいません。。
ここで注意していただきたいのは、
<b:else/>
で>の前に/が付いている点です。
Bloggerのタグは、一行で完結するものもあるのですが、最後に/がないと、構造上エラーとなるようです。
また、最初に戻っていただいて、構造はわかったけど、
<b:if cond='data:blog.pageType != "item"'>
これ、なんだよって言うね。
cond=
cond?
英語のレベルがギャグな僕には、なんの略だかすらわかりません。
こちらの記事によれば、Conditionの略らしいです。ありがたい。
Blogger Sentral: Targeting specific pages/URLs with conditional tags
と言うことで、
<b:if cond='data:blog.pageType != "item"'>
これは、
ところで、今あなたのコンディションは、ブログのアイテム(個別記事)なのかい?
と言う事を聞いているのではないか、と想像できます。
ちなみに、
data:blog.pageType !
は、
Bloggerさんが用意してくれているもので、今読み込まれたページが
静的ページ:トップページや自分のプロフィールなどを書くように新しく追加したページ
なのか、
動的ページ:各ブログ記事のように次々に追加されるページ
なのかの値を返してくれるようです。
ここによれば、値は以下の四つを返すようです。
Archive
Index
Item
Static Page
なので、いきなり上の解釈は、間違いですね。
でもまぁ、たぶん支障ないかと。
と強引に納得して、先へ。
Blogger Tips, Widgets & Latest News: Blogger Page Type list and its descriptions
最後になりますが、
"
これ、なんだよっていうね。
なんか文字化け?
って一瞬思ってしまう。
これ、実はHTMLの街では常識らしいのですが、日本語すら誤字脱字な僕は、今回はじめて知りました。
ダブルコーテーション「"」は「"」と表記するのだそうだ。
シングルコーテの中にタブルコーテを書くのでそうするようです。
なので、
<b:if cond='data:blog.pageType != "item"'>
は、
<b:if cond='data:blog.pageType != "item"'>
の意味ですね。
以上です。