0
function get_people_cats($taxonomy) {

    $output = ''; 
    $terms = get_terms($taxonomy);
    $count = count($terms);
    if ( $count > 0 ):
        foreach ( $terms as $term ):
            $output .= "'". $term->name ."'". '=>';
            $output .= "'". $term->term_id."',";
        endforeach;
    endif;
    return $output; 
}

この関数は、カスタム分類法のリストと、関数がテンプレートで呼び出された場合に見つかった単語を返します。しかし、関数の値を の変数に割り当てたいのですが、functions.php何も返されません。

4

3 に答える 3

0

タクソノミが functions.php のコードで作成するのではなく、実際にプラグインで作成されている場合、タクソノミが開始されるまで get_terms の結果は空になります。したがって、フックの後に関数をフックし、テーマ テンプレート ファイル (functions.php ではなく) でのみ使用する必要があります。基本的には次のようにします。

add_action('init', 'get_people_cats', 9999);

次に、通常どおり呼び出します。$cats = get_people_cats('person_category');

これで問題が解決することを願っています (私が遭遇したとき、これを解決するのに約 1 時間かかったことがわかっています)。

于 2013-08-02T08:56:58.353 に答える
0

これを試してください。ローカル サイトの functions.php ファイルで正常に動作します。

function get_people_cats( $taxonomy ) {

    $output = ''; 
    $terms = get_terms( $taxonomy );
    $count = count( $terms );
    if ( $count > 0 ):
        foreach ( $terms as $term ):
            $output .= $term->name.'=>'.$term->term_id;
        endforeach;
    endif;
    return $output; 
}

echo get_people_cats('category');
于 2013-08-02T00:28:46.413 に答える