GEOLOG / @geeorgey のゲオログ

武器は走りながら拾え

2009–2020年のブログ保存版 ・ 全941記事

ライブドアブログ( @livedoorblog ) でトップページにだけ要素を配置する為のテンプレート術

[画像はバックアップに含まれていません: livedoorblog]

ちょっと必要だったので調べてみた。
ライブドアブログを使い始めて二年が経ち、いろんなところで使っていることは

[Updated11/17 13:30]:ライブドアブログ(@livedoorBlog)の良い点/悪い点をまとめてみた

ここにも書いたとおりだ。
今回紹介するのは、
トップページにだけ何かを表示したい
というニーズを如何に満たすかという話。

ライブドアブログはテンプレートをいじることが出来る。

僕のブログ自体は、無料のテンプレートを自分でいじって改造している。


ブログテンプレートには、いくつかのタグが使えるようになっており、それを使って実現する。




さて、今回トップページにだけ何かを表示したいということを考えたのだけれど、それというのは
「トップページだけ、ナビゲーションを変えて表示したい」
という単純なニーズから来ている。
トップページは、サイトの紹介を入れてみたり、カテゴリーの説明してみたりとか、そういう事をやりたかったのね。


で、それを実現するにはどうしたら良いかというと。
直球で、それに該当する条件分岐のタグはない。
だから、組み合わせで作るのでした。


まず、使うタグは二種類
  1. IndexArticlesLoop
  2. UnlessNextArticle

1のタグはなにしているかというと、Indexページ(つまり、個別の記事ページではなく、トップページや、ページャーでリンクした次のページ等の一覧ページ)を表示しますよという意思表示だ。

これを入れることで、そのページで、ブログ設定>基本設定>トップページの表示件数で設定した数だけループする。


2のタグは何をするかというと、1のタグの中で正常に動作する。(多分そのはず)
ライブドアブログでは、IfをUnlessにすると、ifnotと同義ということで、先程のタグリストを見てみると


IfNextArticleは:次に記事が存在すれば処理
であるので、UnlessNextArticleにすると:次に記事が存在しなければ処理
という意味になる。


つまり、一番最新の記事が表示されている場合なら処理。だ。



結論としては、
<IndexArticlesLoop>
<UnlessNextArticle>
ここにトップページにだけ表示したい要素を配置する
</UnlessNextArticle>
</IndexArticlesLoop>
と書いてやれば、トップページにのみ要素を配置することができるようになる。




個人的には、
  • 各カテゴリーのトップページの場合
  • 各タグのトップページの場合


に要素を表示できるようなタグがあるととても助かるのだけど、出来ないっぽいですね。
もしかして、上のタグを書きこめばいけるかなぁ・・・?と思ってやってみたんだけど、このタグは純粋にアイテムがあるかどうかで判断しているらしく、カテゴリ・タグとは別でしたとさ。



あなたのお役に立てば!!



未分類