#どうも7noteです。Wordpressでよく使う条件分岐をまとめてみました。
wordpressでWEBサイトを作成する際に、
「headタグやコンテンツをページによって出し分けしたいが、共通パーツとして1ファイルで管理したい」
こんな場合、ページの種類によってタグを出し分けるためにwordpress用の関数とif文を合わせることで実装が可能になります。
他にも「スマホのときだけ」や、「アイキャッチ画像が登録されているなら」などif文とwordpressの関数を組見合わせることで、簡単に設計することができます。
そんな便利なWordpressのifでよく使う条件分岐をまとめてみました。
「どのページかを判断する」
<?php
if (is_front_page()、is_home()) {
// TOPページかどうか
} elseif (is_category()) {
// 一覧ページかどうか
} elseif (is_page()) {
// 固定ページかどうか
} elseif (is_single()) {
// 記事ページかどうか
} elseif (is_category()) {
// カテゴリページかどうか
}
?>
2ページ目以降かを判断する
<?php if ( is_paged() ) : ?>
ここに処理を書く
<?php endif; ?>
404ページかを判断する
<?php
if (is_404()) {
// 404ページかどうか
}
?>
アイキャッチ画像が設定されているかどうか
<?php if ( has_post_thumbnail() ) : ?>
<?php the_post_thumbnail(); ?> <!-- アイキャッチ画像が設定されていれば表示 -->
<?php else: ?>
<img src="no-image.jpg" alt="" width="" height=""> <!-- 画像が設定されていなければ代替画像を表示 -->
<?php endif; ?>
スマートフォンかどうかを判別する
<?php
if ( wp_is_mobile() ) {
/* ここにモバイル向けの内容を表示、echo する */
}
?>
Wordpressのメディアファイルかどうか
<?php if ( is_attachment() ): ?>
<meta name="robots" content="noindex"> // メディアファイルのページだったら検索を拒否
<?php endif; ?>
これでメディアをアップロードした場所のページ(URL)単体がインデックスされることはありません。
まとめ
様々な条件分岐を紹介しました。
私もそこまでよく使うわけではないので、今後少しづつ増やしていければと思います。
おそまつ!
~ Qiitaで毎日投稿中!! ~
【初心者向け】WEB制作のちょいテク詰め合わせ