サポート » バグ報告と提案 » walk_category_tree()について

  • wp_list_categories()を使って、新たなwalkerクラスを作って
    レンダリングをしようと思っていろいろやっていたのですが
    反映されず、試行錯誤の結果以下のような不具合があるのではないか
    と思い当たりました。
    間違っているでしょうか?
    動作はこれで正しく動き出したと思います。
    wp-includes/category-template.php内
    function walk_category_tree() {
    $args = func_get_args();
    // the user’s options are the third parameter
    if ( empty($args[2][‘walker’]) || !is_a($args[2][‘walker’], ‘Walker’) )
    $walker = new Walker_Category;
    else
    $walker = $args[2][‘walker’];

    return call_user_func_array(array( &$walker, ‘walk’ ), $args );
    }

    $walker = $args[2][‘walker’];
    ここが
    $walker = new $args[2][‘walker’];

    だと思うのです。
    (これで、新たにfunctionsで指定したクラスで動くようになりました)

    あと、
    if ( empty($args[2][‘walker’]) || !is_a($args[2][‘walker’], ‘Walker’) )
    !is_a($args[2][‘walker’], ‘Walker’)

    ($args[2][‘walker’] == ‘Walker_Category’)
    とすべきなんじゃないかと思うのですが、どうでしょう?

    的をはずしていたらすいません。
    今後の為に、ご指摘いただけると助かります。

  • トピック「walk_category_tree()について」には新たに返信することはできません。