我们在WordPress主题里增加了自定义分类法后,希望在后台文章列表里可以通过这个分类法来筛选出文章,方便管理者查看,那么如何显示这个自定义分类法筛选呢?
可以在主题的functions.php里加入以下代码:
add_action( 'restrict_manage_posts', 'mobantu_post_filter_by_taxonomies' , 10, 2); function mobantu_post_filter_by_taxonomies( $post_type, $which ) { if ( 'post' !== $post_type ) return; $taxonomies = array( 'topic' );//这里的topic就是自定义分类法 foreach ( $taxonomies as $taxonomy_slug ) { $taxonomy_obj = get_taxonomy( $taxonomy_slug ); $taxonomy_name = $taxonomy_obj->labels->name; $terms = get_terms( $taxonomy_slug ); echo "<select name='{$taxonomy_slug}' id='{$taxonomy_slug}' class='postform'>"; echo '<option value="">所有' . sprintf( esc_html__( '%s', 'text_domain' ), $taxonomy_name ) . '</option>'; foreach ( $terms as $term ) { printf( '<option value="%1$s" %2$s>%3$s</option>', $term->slug, ( ( isset( $_GET[$taxonomy_slug] ) && ( $_GET[$taxonomy_slug] == $term->slug ) ) ? ' selected="selected"' : '' ), $term->name ); } echo '</select>'; } }
以上就是后台文章增加分类法筛选的全部内容。
0 个评论