Wordpress - 将类添加到wp_list_pages

时间:2010-11-16 13:21:20

标签: php wordpress

是否有人知道如何编辑/更改Wordpress的wp_list_pages函数以便为ul和li项添加类?

我正在尝试实现jquery.treeview的新版本,该版本在可扩展列表和子ul上需要<li class="expandable"><ul style="display: none;">

我一直在搞乱这个问题,但它的工作太好了,因为它将'可扩展'类应用于所有li:

$pages = wp_list_pages('title_li=&echo=0' );
        $pages = preg_replace('/class="/','class="expandable ', $pages); //note space on end of replacement string                  
        //output
        echo $pages;

以下是输出的html应该是什么样的:

<ul class="treeview" id="tree">

        <li><a href="#">Home</a></li>           
        <li class="expandable"><a href="#">Expand 1</a>
            <ul style="display: none;">
                <li class="expandable"><a href="#">Expand 2_1</a>
                    <ul style="display: none;">
                        <li><a href="#">Expanded 3_1</a></li>
                        <li><a href="#">Expanded 3_2</a></li>
                        <li><a href="#">Expanded 3_3</a></li>
                    </ul>                       
                </li>
                <li class="expandable"><a href="#" >Expand 2_2</a>
                    <ul style="display: none;">
                        <li><a href="#">Expanded 4_1</a></li>
                        <li><a href="#">Expanded 4_2</a></li>
                        <li><a href="#">Expanded 4_3</a></li>
                    </ul>  
                </li>                       
            </ul>  

希望这是有道理的,任何帮助都非常感谢,S。

2 个答案:

答案 0 :(得分:3)

我猜您正在尝试激活页面项目上的树视图。由于这需要JavaScript,因此您可以在初始化树视图之前使用JavaScript添加类:

$("#tree li").addClass("expandable");
$("#tree").treeview();

如果您还想隐藏所有ul元素,也可以使用jQuery(不确定正确的语法):

$("#tree ul").hide();

答案 1 :(得分:0)

也许这个插件(Classy wp-List)有帮助。我还没有尝试过,但它说它会让你为后端的每个页面定义一个类。

祝你好运。