今回は【WordPress】記事ページに表示する、しない条件分岐を解説!!
の解説になります!
こんな方に読んでほしい
- WordPressを学び始めた方へ
- WordPressの記事ページ編、条件分岐について解説していきます。
- 今回はWordPressの「条件分岐」について解説しております。
条件分岐について
今回は記事ページに表示する、しない条件分岐を解説していきます。
記事ページ毎に違う内容を表示させたいときに使います。
または何も表示させないことも可能です。
基本的な条件分岐について
前回、カテゴリーでの条件分岐をする際には、is_category()
を使いましたが、
記事ページではis_single()
を使います。
以下のようになります。
<?php if(is_single()): ?>
全ての記事ページで表示させたい内容を記述
<?php endif; ?>
is_single()
の()
の中身に何も記述がない場合は全ての記事ページが対象となります。
記事ページ(ID)について
記事ページのIDとは、WordPressの管理画面にてカテゴリーを登録した際にアドレスバーに表示される「post.php?&post=〇〇〇〇」の数値になります。
以下のようになります。
<?php if ( is_single('39') ) : ?>
IDが39の記事ページで表示させたい内容を記述
<?php endif; ?>
例:https://sample.jp/wp-admin/post.php?post=39…(省略)の場合は、
39をID番号として指定します。
特定のスラッグについて
記事ページ(スラッグ)とは、WordPressの管理画面にてカテゴリーの編集画面で登録した値になります。
以下のようになります。
<?php if ( is_single('html') ) : ?>
スラッグが「html」のカテゴリーで表示させたい内容を記述
<?php endif; ?>
例:名前を「HTML」、スラッグを「html」に設定した場合、スラッグの「html
」を指定します。
特定の記事ページ(複数)について
上記の解説では、特定の記事ページについての条件分岐について解説してきました。
Aの記事ではAの内容を表示させ、それ以外の記事ページはBの内容を表示させるといった複数の条件分岐も可能になります。
以下のようになります。
// IDでの条件分岐について
<?php if( is_single('39') ) : ?>
IDが39の記事ページで表示させたい内容を記述
<?php else: ?>
それ以外の記事ページで表示させたい内容を記述
(空でも問題ありません)
<?php endif; ?>
// スラッグでの条件分岐について
<?php if(is_single( 'html' )): ?>
スラッグが「news」の記事ページで表示させたい内容を記述
<?php else: ?>
それ以外の記事ページで表示させたい内容を記述
(空でも問題ありません)
<?php endif; ?>
php else:
を使い条件分岐をし、「それ以外の記事ページで表示させたい内容を記述」を指定します。
何も記述がない場合は表示しません。
特定の記事ページに属するページのみの場合について
記事ページA、Bには表示させ、それ以外の記事ページには違う内容を表示させるといった複数の条件分岐も可能になります。
// IDでの条件分岐について
<?php if(is_single( array( '1', '39', '50' ) ) ): ?>
IDが「1, 39, 50」の記事ページで表示させたい内容を記述
<?php else: ?>
それ以外の記事ページで表示させたい内容を記述
(空でも問題ありません)
<?php endif; ?>
// スラッグでの条件分岐について
<?php if(is_single( array( 'html', 'css', 'wordpress', ) ) ): ?>
スラッグが「html、css、wordpress」の記事ページで表示させたい内容を記述
<?php else: ?>
それ以外の記事ページで表示させたい内容を記述
(空でも問題ありません)
<?php endif; ?>
複数指定する場合は必ずarray()
を使い,
で区切りを指定します。
また、記事ページID・スラッグで条件分岐をする際には、必ず'〇〇'
で指定します。
それぞれの記事ページの条件分岐について
記事ページA、B、Cには表示させ、記事ページDにはDの内容を表示させるといった複数の条件分岐も可能になります。
以下のようになります。
// スラッグでの条件分岐について
<?php if(is_single( array( 'html', 'css', 'wordpress', ) ) ): ?>
スラッグが「html、css、wordpress」の記事ページで表示させたい内容を記述
<?php elseif(is_single( 'php' ) ): ?>
スラッグが「php」の記事ページで表示させたい内容を記述
<?php else: ?>
それ以外の記事ページで表示させたい内容を記述
(空でも問題ありません)
<?php endif; ?>
今回はスラッグのみの解説ですが、「記事ページID」も同じ指定方法になります。
php elseif
を使うことで「php」のカテゴリーページでは違う内容を表示させます。
まとめ
今回はこれで以上です。
- POINT
- WordPressの記事ページ編、条件分岐について解説しました。
- カテゴリーの条件分岐をする際には
is_single()
を指定します。 - 記事ページ(ID)は「post.php?&post=〇〇〇〇」の数値になります。
- 記事ページ(スラッグ)はスラッグ名を「html」に指定した場合「html」が値になります。
- 複数指定する場合は必ず
array()
を使い,
で区切りを指定します。
また、記事ページID、スラッグで条件分岐をする際には、必ず'〇〇'
で指定します。
スポンサーリンク

SHU
1991年生まれ九州の宮崎県育ち高校卒業後、愛知県で自動車関係のお仕事に5年間勤め、WEB業界に転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画基本インドアです!笑
つくる、しあわせをテーマとして主にWEBに関する様々な情報を発信しています。
最新記事
関連記事