使用Apply_Filters帮助输出POST类

时间:2014-04-22 作者:Elk

我不熟悉脚本,这是一个插件,我想修改它来输出post类。

当我尝试使用时:apply_filters( \'post_class\', $page->post_class ) it仅输出array=" ". 我是否需要一个附加函数来连接到post类?在我的研究中,我无法判断我的语法是否错误,或者我在类中缺少了一个要“拉”的函数apply_filters 抓住。非常感谢你的帮助。

    var $db_fields = array (\'parent\' => \'post_parent\', \'id\' => \'ID\');


    function start_lvl(&$output, $depth = 0, $args = array()) {
        $indent = str_repeat("\\t", $depth);
        $output .= "\\n$indent<ul class=\'children\'>\\n";
    }


    function end_lvl(&$output, $depth = 0, $args = array()) {
        $indent = str_repeat("\\t", $depth);
        $output .= "$indent</ul>\\n";
    }


    function start_el(&$output, $page, $depth = 0, $args = array(), $id = 0) {
        if ( $depth )
            $indent = str_repeat("\\t", $depth);
        else
            $indent = \'\';

        extract($args, EXTR_SKIP);

        $output .= $indent . \'<li id="item_\'.$page->ID.\'" \'.apply_filters( \'post_class\', $page->post_class ).\'><span>\'.apply_filters( \'the_title\', $page->post_title, $page->ID ).\'</span>\';
    }

1 个回复
SO网友:Elk

使用join()在慷慨的帮助下解决了此问题。。。

function start_el(&$output, $page, $depth = 0, $args = array(), $id = 0) {
        if ( $depth )
            $indent = str_repeat("\\t", $depth);
        else
            $indent = \'\';

        extract($args, EXTR_SKIP);

        $output .= $indent . \'<li id="item_\'.$page->ID.\'" class="\'.join( " ", get_post_class( "", $page->ID )).\'"><span>\'.apply_filters( \'the_title\', $page->post_title, $page->ID ).\'</span>\';
    }

结束

相关推荐

自定义导航/菜单输出(Walker?)

我正在尝试实现响应性jQuery导航,但我需要扩展WP菜单的默认输出。我相信我需要使用定制助行器,但老实说,我不知道如何让它为我工作;我只是不知道如何从中获得所需的输出。我需要包装任何有跨度的子页面并删除链接(以下示例中的朋友和家人)。例如:<nav id=\"menu-right\"> <ul> <li> <span>Friends<