WordPressをCMSとした企業サイトやポータルサイト、Webサービス開発方法やTipsなど。 ファーストエレメントが運営する、WordPressに特化した技術系ブログ。
10.10
2006
WordPressのカテゴリ用のテンプレートタグを使ったテンプレートのカスタマイズ。
結果的には、” 売り切れ ” にチェックするだけで、記事に「売り切れ」と表示する。
■使用例:
商品情報をWordPressブログの1記事として掲載している場合に、もし売り切れたら記事上部に「売り切れ」の文字を表示する。
■使用するタグ:
in_category()
現在の記事が、ある特定のカテゴリに登録されているかどうか判断するタグ。カッコの中にカテゴリIDを入れて指定する。※カテゴリスラッグは使えない。
■手順:
1.あらかじめ商品カテゴリの他に「売り切れ」というカテゴリをつくっておく。そしてカテゴリのIDを把握しておく。
2.表示するべきテンプレート(例えば個別記事表示用のテンプレートsingle.php)の、記事ループ内…例えば記事タイトルの下あたりに、以下のように記述。
※売り切れカテゴリのIDが「6」だった場合
<?php if(in_category(6)) {
echo ‘<p class=”txt_soldout”>売り切れ</p>’;
} ?>
3.スタイルシートで「txt_soldout」を赤色・ボールド表示など定義する。
以上
あとは日頃、商品が売り切れたら編集画面にて「売り切れ」カテゴリにチェックを入れ保存しなおす。自動的に記事タイトルの下に「売り切れ」の文字が表示される。
さらには、売り切れを1カテゴリにしたことで売り切れ商品の一覧ページが自動的に出来上がったことになる。
※一覧ページでも「売り切れ」を表示したい場合はindex.phpにも同様に記述する。カテゴリ用テンプレートcategory.phpやアーカイブテンプレートarchive.phpを用意してある場合も同様。
※WordPressでは、個別の記事を表示する際(=”続きを読む”をクリックした時)、もしsingle.phpがテーマ(theme)フォルダ内にあればそれを使う。もし無ければindex.phpが使われる。category.phpやarchive.phpも同様。例えばカテゴリテンプレートの場合の優先順位は、category-6.php>category.php>archive.php>index.phpとなる。数字「6」はカテゴリID。このテンプレートが用意してあると、ID=6のカテゴリが表示される時のみcategory-6.phpというテンプレートが使われる。
| 日 | 月 | 火 | 水 | 木 | 金 | 土 |
|---|---|---|---|---|---|---|
| « 12月 | ||||||
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | |||
コメント/質問お待ちしています