默认的WordPress类别窗口小部件不允许排除命名类别。
我创建了一个插件,可以创建一个自定义类别窗口小部件到“可用窗口小部件”列表,它可以控制我想要排除的项目。代码如下......
<?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,这是默认的“未分类”类别,并将项目分配给我不希望出现在列表中的该类别。任何帮助非常感谢! :)
答案 0 :(得分:6)
类别小部件的代码位于wp-includes/default_widgets.php
。只需复制WP_Widget_Categories
类,重命名它,并将额外的参数添加到wp_list_categories
调用。
或者,您可以使用wp_list_categories
过滤器修改窗口小部件中widget_categories_args
调用的参数,但这将适用于窗口小部件的所有实例。