0

すべてのカスタム投稿 (post_type=family_guy) とその ID およびすべてのタグを多次元配列で取得するにはどうすればよいですか?

配列を次のように表示したい場合は、まさに次のとおりです。

$array = array("1" =>   Array(
                           "Peter1",
                           "Lois1",
                           "Megan1"
                     ),  
          "2" =>   Array(
                           "Peter2",
                           "Lois2",
                           "Megan2"
                     ),
          "3" =>   Array(
                            "Peter3",
                            "Lois3",
                            "Megan3"
                     ),
         "4" =>   Array(
                            "Peter4",
                            "Lois4",
                            "Megan4"
                     )
          );

この配列では、キーはカスタム投稿 ID になり、値はそのカスタム投稿のすべてのタグになります。

前もって感謝します。

4

1 に答える 1

1

functions.php で、これらの行に沿った何かが役立つはずです

function cpt_tag_list() {
    $types = get_post_types(array(
        '_builtin' => false  // This returns only custom post types
        'public' => true     // Not necessarily right, but consider this, you may need to filter out CPTs made by plugins.
    ));

    $op = array();
    $i = 0;

    foreach ($types as $cpt) {
        $i++;

        $posts_in_cpt = new WP_Query("posts_per_page=-1&post_type={$cpt}");

        $tags_used = array();

        foreach ($posts_in_cpt as $post) {
            $tags_used[] = get_tags($post->ID);
        }

        $op[(string) $i] = array_unique($tags_used);
    }

return $op
}

次に、cpt_tag_list(); を呼び出してサイトで呼び出します。

これでエラーが発生した場合はお詫びします。テストする機会はありませんでしたが、要点があなたのためにあることを願っています.

于 2013-10-04T10:43:31.887 に答える