かわたま.net

Enjoy Creative! かわたまのwebメモ

wordpressで特定のページのみに条件分岐して「特定の要素」を表示させる方法

2014 June 10

Tag:

wordpressで特定のページのみに「特定の要素(例えばサブメニュー、バナーなど)」を表示させたい場合、記事内に表示させる場合は問題ありませんが、テンプレートファイル内に表示させたい場合は条件分岐で「特定の要素」を表示させます。
また、複数のページに「特定の要素」を表示させる場合の記述方法もメモします。

「特定の要素」をphpファイルに記述

新しいphpファイルに、表示させたい要素を記述します。

例えば、特定のページのみにバナーを追加したい場合。

# banner.php
<a href="piyo"><img src="images/hoge.jpg" alt="hoge" /></a>

テンプレートファイルに記述

テンプレートファイル内の、要素を表示させたい位置に下記を記述します。
【例】
aboutページ内の特定の箇所に banner.php を表示させる場合
→もしaboutページだったら、ここにbanner.php を表示させる

<?php
if(is_page('about')):
  get_template_part('banner');
endif;
?>

「特定の要素」を複数のページに表示させる場合の記述方法

php の演算子である論理和”||”を使います。
【例】
aboutページとworksページとnewsページ内の特定の箇所に banner.php を表示させる場合
→もしaboutページとworksページとnewsページだったら、ここにbanner.php を表示させる

<?php
if(is_page('about') || is_page('works') || is_page('news')):
  get_template_part('banner');
endif;
?>

「特定の要素」数種類を複数の特定ページにそれぞれ表示させる場合の記述方法

【例】
aboutページとworksページとnewsページ内の特定の箇所に banner.php を、blogページの特定の箇所に banner02.php を表示させる場合
→もしaboutページとworksページとnewsページだったら、ここにbanner.php を表示させ、 blogページだったらここに banner02.php を表示させる

<?php
if(is_page('about') || is_page('works') || is_page('news')):
  get_template_part('banner');
elseif(is_page(' blog')):
  get_template_part('banner02');
endif;
?>

オススメのwordpress教本

▼WordPressデザインブック3.x対応
webデザイン上、WordPressの基本的ことが、実用例と一緒に体系的かつ網羅的にわかりやすく解説されていてかなりオススメです。

▼WordPressデザイン、仕事のネタ帳、見た目と効果を向上させるプロのテクニック
サイトの目的に応じたデザインカスタマイズ、追加機能の実装方法などの解説がのっています。

▼本格ビジネスサイトを作りながら学ぶ WordPressの教科書
XHTML/CSSでのサイト制作はできるが、WordPressを使うのは初めての方
ビジネスレベルのWebサイトをWordPressで構築しようとしている方
html,cssは使えるけどphpは初心者
そんな方にオススメです。