記事ページ/固定ページかどうか判定する方法 | WordPress開発

※当サイトはアフィリエイト広告を利用しています。

WordPressを使っていると、記事ページと固定ページで違う内容を表示したいことがあります。

記事ページと固定ページでは、表示方法や管理方法が異なるため、正しいページに対して適切な処理をすることが必要です。

そこで、今回はWordPressで記事ページか固定ページかを判定する方法について解説します。
スポンサーリンク


記事ページかどうか判定する(is_single)

記事ページかどうか判定するには
is_single()
を使用します。記事ページの場合にtrueを返し、そうではない場合にはfalseを返します。

引数なしの場合には今開いているページが記事ページかどうかを判定します。

また、is_singleには数値/文字列/配列の引数が指定でき、今開いているページが特定の記事ページであるかどうかを判定できます。

今、サンプルコードです。
is_single(111); //ID=111の記事かどうか判定する
is_single("111"); //ID=111の記事かどうか判定する
is_single("わんこ"); //タイトル=わんこの記事かどうか判定する
is_single("dog"); //タイトルスラッグ=わんこの記事かどうか判定する
is_single( array(111, "わんこ", "dog") ); //上記のORを判定する

固定ページかどうか判定する(is_page)

固定ページかどうか判定するには
is_page()
を使用します。固定ページの場合にtrueを返し、そうではない場合にはfalseを返します。

引数なしの場合には今開いているページが固定ページかどうかを判定します。

また、is_pageには数値/文字列/配列の引数が指定でき、今開いているページが特定の固定ページであるかどうかを判定できます。

今、サンプルコードです。
is_single(111); //ID=111の固定ページかどうか判定する
is_single("111"); //ID=111の固定ページかどうか判定する
is_single("わんこ"); //タイトル=わんこの固定ページかどうか判定する
is_single("dog"); //タイトルスラッグ=わんこの固定ページかどうか判定する
is_single( array(111, "わんこ", "dog") ); //上記のORを判定する

記事ページもしくは固定ページかどうかを判定する

記事ページもしくは固定ページを表示しているか判定したい場合はさきほどのis_singleとis_pageのorをとればOKです。

以下、サンプルコードです。
is_single() or is_page();

各ページでの値の一覧

念のため、is_singleとis_pageの値について、カテゴリ一覧などの各ページでの値を確認しました。

以下、結果です。
ページ種類is_single()is_page()
記事ページtruefalse
固定ページfalsetrue
トップページfalsefalse
カテゴリ一覧ページfalsefalse
タグ一覧ページfalsefalse
日付一覧ページfalsefalse
検索結果ページfalsefalse
is_single()とis_pae()の各ページでの値

上記の表の結果を見れば、is_singleとis_pageで記事ページ/固定ページかどうか判定できることがわかりますね。

まとめ

この記事ではWordPressにおいて記事ページもしくは固定ページかどうかを判定する方法を紹介しました。