web-dev-qa-db-ja.com

WP_Queryが子カテゴリを見ていません

こんにちはすべて私は単一のページに投稿を表示し、変数$ catに最初のカテゴリ名を置くループがあります:

$cat = $category[0]->cat_name;?>

今記事の後に私はこのカテゴリに基づいて関連記事を表示するためのリンクがあります。

$catPosts1 = new WP_Query(array('category_name'=> $cat, 'orderby' => 'Rand', 'posts_per_page' => 1));
    while ($catPosts1->have_posts()) : $catPosts1->the_post();

最初の投稿に子カテゴリが選択されていると問題になります。カテゴリPhonesの下で、子カテゴリAccessoriesが選択されており、関連リンク領域には何も表示されていません。 Wordpressにこの子カテゴリを使用させる方法はありますか?ありがとう

4
Mark H

あなたは自分で子または親のカテゴリを取得し、 WP_Queryのcategory__in引数 を介してすべてのIDを配列として渡す必要があります。 get_ancestors を使用して最上位の親カテゴリを取得し、 child_ofget_categories引数を介してその親のすべての子カテゴリを取得できます。

2
Milo