条件付きタグは、特定の条件に基づいてサイトに表示されるコンテンツを動的に制御できる WordPress の強力なツールです。 GenerateBlocks でコンディショナル タグを使用する実際の例をいくつか示します。
例 1: ベジタリアンレシピと低炭水化物レシピのアイコンの表示
食べ物ブログでは、コンディショナル タグを使用して、ベジタリアン レシピや低炭水化物レシピのアイコンを表示できます。たとえば、アーカイブ用のコンテンツ テンプレート ブロック要素を作成し、条件ブロックを使用してベジタリアン、低炭水化物などのアイコン/テキストを表示できます。これは、`wp_list_categories` 関数を使用してすべてのカテゴリをリストし、チェックすることで実現できます。現在の投稿が特定のカテゴリに属している場合。該当する場合は、対応するアイコンを表示できます[3]。
例 2: カテゴリに基づいて異なるコンテンツを表示する
コンディショナルタグを使用すると、カテゴリに基づいてさまざまなコンテンツを表示できます。たとえば、「ベジタリアン」、「低炭水化物」、「デザート」などのカテゴリを持つブログがある場合、現在の投稿のカテゴリに基づいて特定のメッセージまたはアイコンを表示するブロックを作成できます。これは、「is_category()」関数を使用して現在の投稿が特定のカテゴリに属しているかどうかを確認し、対応するコンテンツを表示することで実現できます[2]。
例 3: ユーザーのステータスに基づいたコンテンツの表示
コンディショナルタグを使用すると、ユーザーステータスに基づいてコンテンツを表示できます。たとえば、ユーザーがログインしている場合にのみメッセージまたはアイコンを表示するブロックを作成できます。これは、「is_user_logged_in()」関数を使用してユーザーがログインしているかどうかを確認し、対応するコンテンツを表示することで実現できます[ 1]。
例 4: ページ タイプに基づいてコンテンツを表示する
コンディショナルタグを使用すると、ページタイプに基づいてコンテンツを表示できます。たとえば、現在のページがホームページである場合にのみメッセージまたはアイコンを表示するブロックを作成できます。これは、「is_home()」関数を使用して現在のページがホームページであるかどうかを確認し、対応するコンテンツを表示することで実現できます[2]。
例 5: カスタム分類に基づいたコンテンツの表示
コンディショナルタグを使用して、カスタム分類に基づいてコンテンツを表示できます。たとえば、現在の投稿が特定のカスタム分類に属している場合にのみメッセージまたはアイコンを表示するブロックを作成できます。これは、「wp_list_categories」関数を使用してすべてのカテゴリをリストし、現在の投稿が特定のカテゴリに属しているかどうかを確認することで実現できます。該当する場合は、対応するアイコンを表示できます[3]。
例 6: 投稿タイプに基づいてコンテンツを表示する
コンディショナルタグを使用すると、投稿タイプに基づいてコンテンツを表示できます。たとえば、現在の投稿が特定の投稿タイプである場合にのみメッセージまたはアイコンを表示するブロックを作成できます。これは、「is_single()」関数を使用して現在の投稿が特定の投稿タイプであるかどうかを確認し、対応するコンテンツを表示することで実現できます[2]。
例 7: クエリに基づいたコンテンツの表示
コンディショナルタグを使用して、クエリに基づいてコンテンツを表示できます。たとえば、現在のクエリが特定の種類の場合にのみメッセージまたはアイコンを表示するブロックを作成できます。これは、「is_search()」関数を使用して現在のクエリが検索クエリであるかどうかを確認し、対応するコンテンツを表示することで実現できます[2]。
これらは、GenerateBlocks でコンディショナル タグを使用して動的で多用途なコンテンツ レイアウトを作成する方法のほんの数例です。
引用:[1] https://learn.wordpress.org/lesson-plan/conditional-tags/
[2] https://codex.wordpress.org/Conditional_Tags
[3] https://generatepress.com/forums/topic/conditional-blocks-in-block-element/
[4] https://wptavern.com/build-versatile-layouts-with-the-generateblocks-wordpress-plugin
[5] https://generateblocks.com/generateblocks-1-2-0/