WP建站:后台文章列表添加自定义分类筛选

首页 » 实用教程 » WP建站:后台文章列表添加自定义分类筛选
所属分类:实用教程
发布时间:2019-12-16
浏览次数:2,133 views

如果你的文章或者文章类型添加了自定义分类,下面的代码可以在 WordPress 后台文章列表添加自定义分类下拉筛选框,快速通过自定义分类筛选文章。

add_action('restrict_manage_posts', function($post_type){
	if($taxonomies	= get_object_taxonomies($post_type, 'objects')){
		foreach($taxonomies as $taxonomy) {

			if(empty($taxonomy->hierarchical) || empty($taxonomy->show_admin_column)){
				continue;
			}

			if($taxonomy->name == 'category'){
				$taxonomy_key	= 'cat';
			}else{
				$taxonomy_key	= $taxonomy->name.'_id';
			}

			$selected	= 0;
			if(!empty($_REQUEST[$taxonomy_key])){
				$selected	= $_REQUEST[$taxonomy_key];
			}elseif(!empty($_REQUEST['taxonomy']) && ($_REQUEST['taxonomy'] == $taxonomy->name) && !empty($_REQUEST['term'])){
				if($term		= get_term_by('slug', $_REQUEST['term'], $taxonomy->name)){
					$selected	= $term->term_id;
				}
			}elseif(!empty($taxonomy->query_var) && !empty($_REQUEST[$taxonomy->query_var])){
				if($term	= get_term_by('slug', $_REQUEST[$taxonomy->query_var], $taxonomy->name)){
					$selected	= $term->term_id;
				}
			}

			wp_dropdown_categories(array(
				'taxonomy'			=> $taxonomy->name,
				'show_option_all'	=> $taxonomy->labels->all_items,
				'show_option_none'	=> '没有设置',
				'hide_if_empty'		=> true,
				'hide_empty'		=> 0,
				'hierarchical'		=> 1,
				'show_count'		=> 0,
				'orderby'			=> 'name',
				'name'				=> $taxonomy_key,
				'selected'			=> $selected
			));
		}
	}
});

原文链接: https://blog.wpjam.com/m/filter-by-taxonomy-in-wordpress-admin-post-list/

关键字:

相关阅读

WordPress使用 add_query_arg 函数的JS版addQueryArgs简化JS URL 构建

熟悉WordPress开发的朋友很可能用过add_query_arg函数,他可以很方便的帮我们给一个URL添加 […]

WP建站优化加速技巧:禁用 WordPress 的 Emoji 功能

使用WordPress建站完成以后,浏览网站时速度很慢,查看源代码发现有一大段莫名的代码,如下图: 这是Wor […]

自定义查询 WP_Query 所有参数详细注释

WordPress 中文资源不算少,但真正完整全面的中文资源却不多。比如 WP_Query 这个万能的文章查询 […]