【 WordPress 】テンプレートをカスタマイズする ① – 条件分岐タグ
WordPress には様々な関数が用意されており、それらを用いることでテンプレートファイルを詳細にカスタマイズすることができます。
条件分岐タグ
トップページ
if (is_front_page() || is_home()) {
// トップページのときの処理
}
is_front_page() はトップページの表示設定に関わらず、トップページを表示しているときに true を返します。
is_home() は「投稿ページ」が設定されている場合に true を返します。
個別投稿ページ
if (is_single()) {
// 個別投稿ページの処理
}
is_single() 関数は引数を指定することができ、以下の属性について条件を絞って特定のページの投稿ページのときのみの処理を追加することができます。
IDタイトル投稿スラッグ上記いずれかの array
is_single( '57' )
// IDが 57 の投稿ページのとき
is_single( 'Some Title' )
// タイトルが "Some Title" の投稿ページのとき
is_single( array('57', '495', '1729') )
// ID が 57 or 495 or 1729 のとき
この関数では ID, タイトル及び投稿スラッグを区別しません。
引数に 57 を指定したときは、実際には ID, タイトルまたは投稿スラッグが 57 のページで true を返します。
先頭固定表示の投稿
if (is_stick()) {
// 投稿編集ページで「この投稿を戦闘に固定表示」のチェックが入っている投稿ページの処理
引数に投稿 ID を指定することができ、指定した場合は該当の投稿が先頭固定表示のときに true を返します。
固定ページのとき
if (is_page()) {
// 固定ページのときの処理
}
この関数は引数を指定することができ、以下の属性について条件を絞って特定のページの固定ページのときのみの処理を追加することができます。
IDタイトル投稿スラッグ上記いずれかの array
is_page( '57' )
// ID が 57 の固定ページのとき
is_page( 'Some Title' )
// タイトルが "Some Title" の固定ページのとき
特定のページテンプレートのとき
if (is_page_template( 'page_template.php' )) {
// ページテンプレート名が page_template.php のページのとき
}
カテゴリーアーカイブページ
if (is_category()) {
// カテゴリーアーカイブページのとき
}
この関数は引数を指定することができ、以下の属性について条件を絞って特定のカテゴリーアーカイブページときのみの処理を追加することができます。
カテゴリーIDカテゴリー名カテゴリースラッグ上記いずれかの array
is_category( '28' )
// カテゴリーID が 28 のアーカイブページのとき
is_category( 'some_category' )
// some_category というカテゴリー名のアーカイブページのとき
is_category( array('57', '495', '1729') )
// カテゴリーID が 57, 495, 1729 のいずれかのアーカイブページのとき
この関数では ID, タイトル及びカテゴリースラッグを区別しません。
引数に 28 を指定したときは、実際には ID, カテゴリー名またはカテゴリースラッグが 28 のページで true を返します。
タグアーカイブページ
if (is_tag()) {
// タグアーカイブページのとき
}
この関数は引数を指定することができ、以下の属性について条件を絞って特定のタグアーカイブページのときのみの処理を追加することができます。
IDスラッグタグ名上記いずれかの array
is_tag( '57' )
// タグ ID が 57 のアーカイブページのとき
is_tag( 'some_slug' )
// タグスラッグが some_slug のアーカイブページのとき
is_tag( array('57', '495', '1729') )
// タグ ID が 57, 495, 1729 のアーカイブページのとき
この関数では ID, タグ名及びスラッグを区別しません。
引数に 57 を指定したときは、実際には ID, タグ名またはスラッグが 57 のページで true を返します。
タクソノミーアーカイブページ
if (is_tax()) {
// タクソノミーアーカイブページが表示されているとき
}
作成者別アーカイブページ
if (is_author()) {
// 作成者アーカイブページのとき
}
この関数は引数を指定することができ、以下の属性について条件を絞って特定の作成者アーカイブページのときのみの処理を追加することができます。
IDuser_nicenamenickname
is_author( '57' )
// ID が 4 の作成者のアーカイブページのとき
is_author( 'some_nickname' )
// ニックネームが `some_nickname` の作成者のアーカイブページのとき
is_author( 'some_nicename' )
// ナイスネームが `some_nicename` の作成者のアーカイブページのとき
is_author( array(4, 'some_nickname', 'some_nicename') )
作成者 ID, nickname が `some_nickname` または user_nicename が `some_nicename` の作成者のアーカイブページのとき
日付別アーカイブページ
if (is_date()) {
// 日付別アーカイブページのとき
}
if (is_year()) {
// 年別アーカイブページのとき
}
if (is_month()) {
// 月別アーカイブページのとき
}
if (is_time()) {
// 毎時別、毎分別、毎秒別アーカイブページのとき
}
if (is_new_day()) {
// 投稿の日付が新しい日の場合
}
アーカイブページ
if (is_archive()) {
// 各アーカイブページのとき
}
検索結果ページ
if (is_search()) {
// 検索結果ページのとき
}
404 ページ
if (is_404()) {
// 404 エラーページのとき
}
複数にわたるページ
if (is_paged()) {
// 複数にわたるページ(アーカイブページなど)のとき
}
シングルページ (固定ページ、個別投稿ページ等)
if (is_singular()) {
// 固定ページや個別投稿ページのとき
}
以上、テンプレートのカスタマイズで利用する条件分岐タグについてまとめました。
よく使う関数、それぞれの利用例については以下のリンクから






ディスカッション
コメント一覧
まだ、コメントがありません