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()について」には新たに返信することはできません。