WordPressは、広く使用されているオープンソースコンテンツ管理システム(CMS)であり、その強力な分類とタグ付け機能が記事やページコンテンツを簡単に整理するのに役立ちます。多数の記事を操作する場合、カスタムクエリを通じて分類法から特定の情報を抽出する必要がある場合があります。この記事では、wp_queryクラスの使用方法と、分類フィルタリングにそのパラメーターを紹介します。
WP_Queryは、WordPressがデータベース内の異なるコンテンツを照会するために使用するコアクラスです。記事、ページ、添付ファイル、カスタムコンテンツタイプをクエリする柔軟性が得られます。このクラスを使用すると、クエリ条件をカスタマイズして、特定の要件を満たすコンテンツを取得できます。
この記事では、wp_queryクラスを使用して特定のカテゴリで記事をフィルタリングする方法に焦点を当てます。 wp_queryを使用すると、データベースを直接操作するのと同じように、基準を満たす投稿を柔軟に除外できます。
WP_QUERYは、特定の分類項から必要な記事を除外するのに役立つTAX_QUERYと呼ばれるパラメーターをサポートしています。 Tax_Queryパラメーターは、複数のフィルターを設定してクエリ結果を正確に制御できる配列です。
以下は、wp_queryを使用して特定のカテゴリに属する記事を照会する例です。
$args = array(
'post_type' => 'post',
'posts_per_page' => 10,
'tax_query' => array(
array(
'taxonomy' => 'category',
'field' => 'slug',
'terms' => 'news',
),
),
);
$query = new WP_Query($args);
このクエリでは、いくつかの重要なパラメーターを指定します。
このクエリは、「ニュース」カテゴリに分類されるすべての記事を返します。
Tax_Queryは、単一のフィルタリング条件をサポートするだけでなく、複数の条件を組み合わせて、より複雑なフィルタリングを組み合わせています。カスタム分類クエリなど、複数のフィルター条件をtax_Queryアレイに追加できます。
$args = array(
'post_type' => 'post',
'posts_per_page' => 10,
'tax_query' => array(
'relation' => 'OR',
array(
'taxonomy' => 'category',
'field' => 'slug',
'terms' => 'news',
),
array(
'taxonomy' => 'custom_category',
'field' => 'slug',
'terms' => 'featured',
),
),
);
$query = new WP_Query($args);
この例では、「関係」パラメーターを「または」に設定します。つまり、任意の条件が満たされている限り(「ニュース」カテゴリまたは「機能」カテゴリに属する)、対応する記事が返されます。
この記事を通して、wp_queryのtax_queryパラメーターを使用して記事をフィルタリングする方法を習得しました。分類に基づいて記事を正確にフィルタリングする方法を説明し、複数のフィルター基準を介してより詳細なクエリを実行する方法を示します。通常の分類法であろうとカスタム分類であろうと、WP_QUERYは強力なサポートを提供します。