2010-04-21 55 views
2

WordPress默认类别窗口小部件不允许排除命名类别。黑客WordPress的类别的Widget

我创建它创建了一个插件添加自定义的类别小部件来,给了我在我要排除的项目的一些控制“可用的部件”的列表。代码如下...

<?php 
/* 
Plugin Name: Custom Categories Widget 
Plugin URI: http://mysite.com 
Description: Removes the Specified Categories from the Default Categories Listing 
Author: Me 
Version: 1.0 
Author URI: http://mysite.com 
*/ 


function widget_my_categories() 
{ 
    wp_list_categories('exclude=1'); 
} 

function my_categories_init() 
{ 
    register_sidebar_widget(__('Custom Categories Widget'), 'widget_my_categories'); 
} 

add_action("plugins_loaded", "my_categories_init"); 
?> 

不过,我想生成的代码来模拟相同的外观和感觉作为默认类别窗口小部件(即,单词“类别”出现在我的窗口小部件子弹,但作为一个h4级标题元素在默认类别小部件中我想要相同的结构应用于我的自定义小部件,因为默认类别小部件具有

我还想给用户指定标题的选项在类别列表(正如它们可以在默认的类别小部件一样)。

顺便说一句,我使用的ID 1这是默认的“uncat egorized“类别并将项目分配给我不想出现在列表中的类别。

任何帮助非常感谢! :)

回答

6

为类别插件的代码是在wp-includes/default_widgets.php。只需复制WP_Widget_Categories类,重命名它并将您的额外参数添加到wp_list_categories调用。

或者,您可以使用widget_categories_args过滤器修改窗口小部件中wp_list_categories调用的参数,尽管这将适用于窗口小部件的所有实例。

+0

感谢理查德! – 2010-04-22 03:49:30

+0

理查德,我在使用现有类作为模板时遇到了相当多的困难。你可以看看这个,看看我做错了什么:http://stackoverflow.com/questions/2692426/creating-a-custom-categories-widget – 2010-04-22 17:38:05