0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【WordPress】条件分岐タグ チートシート

Last updated at Posted at 2024-08-15

WordPressのテーマやプラグインの開発に役立つ、テンプレートの範囲指定ができる条件分岐タグをまとめました。複数の固定ページや投稿タイプを指定する方法も含めて解説しています。このチートシートを使って、特定のページやコンテンツに応じた処理を柔軟に行いましょう。

基本ページ判定

is_front_page()

フロントページ(ホームページ)かどうかを判定します。

is_home()

ブログ投稿ページ(通常の投稿リストページ)かどうかを判定します。

is_page($page)

特定の固定ページかどうかを判定します。
$page にはページID、スラッグ、またはタイトルを指定可能。

複数ページを指定する場合

if (is_page(array(42, 'about', 'Contact Us'))) {
    // ページID 42、スラッグ 'about'、またはタイトル 'Contact Us' のページの場合
}

is_single($post)

特定の投稿ページかどうかを判定します。
$post には投稿ID、スラッグ、またはタイトルを指定可能。

複数の投稿を指定する場合

if (is_single(array(10, 'my-post-slug', 'Another Post'))) {
    // 投稿ID 10、スラッグ 'my-post-slug'、またはタイトル 'Another Post' の投稿の場合
}

アーカイブページ関連

is_archive()

任意のアーカイブページかどうかを判定します(カテゴリ、タグ、著者、日付などすべてのアーカイブページに適用)。

is_category($category)

特定のカテゴリアーカイブページかどうかを判定します。
$category にはカテゴリID、スラッグ、または名前を指定可能。

複数カテゴリを指定する場合

if (is_category(array(4, 'news', 'Updates'))) {
    // カテゴリID 4、スラッグ 'news'、または名前 'Updates' のカテゴリの場合
}

is_tag($tag)

特定のタグアーカイブページかどうかを判定します。
$tag にはタグID、スラッグ、または名前を指定可能。

複数タグを指定する場合

if (is_tag(array(3, 'featured', 'Special Tag'))) {
    // タグID 3、スラッグ 'featured'、または名前 'Special Tag' のタグの場合
}

is_author($author)

特定の著者アーカイブページかどうかを判定します。
$author には著者ID、スラッグ、または名前を指定可能。

複数著者を指定する場合

if (is_author(array(1, 'admin', 'John Doe'))) {
    // 著者ID 1、スラッグ 'admin'、または名前 'John Doe' の著者ページの場合
}

is_date()

日付ベースのアーカイブページかどうかを判定します。

is_year()

年アーカイブページかどうかを判定します。

is_month()

月アーカイブページかどうかを判定します。

is_day()

日アーカイブページかどうかを判定します。

is_post_type_archive($post_type)

特定のカスタム投稿タイプのアーカイブページかどうかを判定します。
$post_type には投稿タイプのスラッグを指定可能。

複数の投稿タイプを指定する場合

if (is_post_type_archive(array('product', 'portfolio'))) {
    // 'product' または 'portfolio' の投稿タイプアーカイブの場合
}

特殊ページ関連

is_search()

検索結果ページかどうかを判定します。

is_404()

404エラーページかどうかを判定します。

is_attachment()

添付ファイルページかどうかを判定します。

is_singular($post_types)

単一の投稿ページか固定ページかどうかを判定します。
$post_types には投稿タイプのスラッグを指定可能。

複数の投稿タイプを指定する場合

if (is_singular(array('post', 'page', 'product'))) {
    // 'post'、'page'、または 'product' の単一ページの場合
}

カスタム分類(タクソノミー)関連

is_tax($taxonomy, $term)

特定のタクソノミーやタームに属するアーカイブページかどうかを判定します。
$taxonomy にはタクソノミースラッグ、$term にはタームスラッグまたはIDを指定可能。

複数のタームを指定する場合

if (is_tax('genre', array('action', 'comedy'))) {
    // 'genre' タクソノミーの 'action' または 'comedy' タームの場合
}

投稿フォーマット関連

has_post_format($format)

特定の投稿フォーマットかどうかを判定します。
$format にはフォーマットスラッグを指定可能(例: aside, gallery など)。

複数のフォーマットを指定する場合

if (has_post_format(array('aside', 'gallery'))) {
    // 'aside' または 'gallery' フォーマットの場合
}

ログイン・登録関連

is_user_logged_in()

現在のユーザーがログインしているかどうかを判定します。

is_admin()

管理画面のいずれかのページかどうかを判定します。

デバイス関連

wp_is_mobile()

現在のページがモバイルデバイスで表示されているかどうかを判定します。


このチートシートを使って、特定のページやコンテンツに対して適切なテンプレートやスタイルを柔軟に適用することができます。複数の条件を指定することで、より詳細な制御が可能になりますので、ぜひ活用してください。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?