MENU

条件タグを使わずにカテゴリー別に表示

WordPressの条件タグを使用せずに、カテゴリー別に表示する方法。

条件タグを使用すると、分かりにくくなるのと、
カテゴリー毎に表示を変えたい場合、1つ1つ指定しないといけないので、
長くなってしまう。

目次

条件タグを使用した場合

WordPressテンプレートタグを使用する場合、条件タグを使って以下のように記述する。

[php]

カテゴリーID、3の時表示

カテゴリーID、10の時表示

[/php]

テンプレートタグ使った場合こんな感じ。
デフォルトのテーマはこういう書き方をしていたような。
(ざっと書いたので間違ってたらすいません…)

PHP構文、switch文を使う方法

テンプレートタグを使わずにPHPで記述する方法です。
正確には、テンプレートタグを使うけれど、よりPHPの書き方に近い方法です。

テンプレートタグに格納してある情報を抜き出し、
変数を作って、格納する。

変数とswitch文を利用して、出力させるというもの。

ここでは、親カテゴリーIDを$catIDという変数を作成して格納。
switch()の()に$catIDを入れて、

caseの後に表示させたいカテゴリーIDを記述し、
echoで内容を出力する。

[php]category_parent;
?>
[/php]

ここで、echo””;の中では、すでにの中にあるので、
が使えない。

その場合、文字列演算子「.」ピリオドを使用し文字列をつなげる。
また、を取った形にする。

注意したいのは、テンプレートタグ自体がechoに寄って出力されるものがある。
その場合、PHPの値として返すテンプレートタグを使用する。

[php]×→echo”“;[/php] [php]○→echo”“;[/php]

なぜ同じようなテンプレートタグがあるのか疑問で、紛らわしいなと思っていたのですが、こういう事だったのですね。

テンプレートタグには、一般的に普通に出力するものの他に隠れたものがあるのですねぇ。

奥が深いですね。

PHPを織り交ぜたテーマカスタイマイズ、これからも色々してみたいです。

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

WordPress Love! 休日はほぼWordPress仲間と一緒に勉強会や写真を撮りに行っています。現在育児中のため、オフが多いです(>△<<<)

コメント

コメント一覧 (1件)

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

目次