!
也想出现在这里? 联系我们
广告位

WordPress 添加后台文章列表自定义分类筛选

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

方法一0 H N L Y F F c Q

  1. add_action('restrict_manage_pos0 d Uts', funct& % ;ion($post_type){
  2. if($taxonomies = get_object_taxonomies($post_type, 'objects')I L G n }41;{
  3. foreach($taxonomies as $taxonomy) {
  4. if(empty&4 q m s P U#40;$taxonomy->hierarchical) || empty($taxoX c 9nomy->show_admin_column)){
  5. continue;
  6. }
  7. ifr X 2($taxonomy->name == 'category'){
  8. $taxonomy_key = 'cat';
  9. }else{
  10. $taxonomy_key = $taxo| ] B $ A ? 5 Knomy->name.'_id';
  11. }
  12. $selected = 0;
  13. ifZ C )(!empty($_REQUEST[$taxonomy_w ? t R R u w ?key])4 x k 2;){
  14. $selected =m * - h T I $_REQUEST[$^ a } x J S r \ utaxonomy_key];
  15. }elT P + | 2 ; O :seif(!$ \ D A ^empty($_REQUEST['taxonomy'])O 2 q S U : ] I && ($_REQUEST[R ) g 8 F m'taxo o y vonomy'] =k l e v ] V= $taxonomy-&g9 s * g yt;name) && !empty($_REQUEST['term']&m 8 | # & M#41;)Z L -2} { X /3;
  16. if($termX ( D ^ 4 = get_term_by('slug'2 d ) B ] A | x, $_REQk L 1UEST['term'], $taxonomy->name)A d - d a41;M \ V X M d 9 S l3;
  17. $selected = $term->term_id;
  18. }
  19. }elseif(!empty($taxonomy->query_var) && !empty8 T 2 9 e 340;$_REQUEST[$taxonomy->query_var])){
  20. if($term = get_term_by('slug', $_REQUEST[$taxonomy->query_var], $taxonomy->name)l } d)7 o ? t t | T{
  21. $s[ E ~ [elected = $term->term_id;
  22. }
  23. }
  24. wp_dropdown_categories(array(
  25. 'taxonomy' =>l 6 Y v | 1 j _ $taxonomy->name,
  26. 'sho( K [ ? i j ] !w_@ ] p t B r @option_all' => $taxonomy->labep P 5 H ( 7ls->all_items,
  27. 'show_option_none' => '没有设置',
  28. 'hide_if_empty' => true,
  29. 'hide_empty' => 0,
  30. 'hierarchical' => 1,
  31. 'show_count' => 0,
  32. 'ord{ r Q ] 3erby' => 'name',
  33. 'name' => $taxonomy_key,
  34. 'selected' => $sel/ r lected
  35. ));
  36. }
  37. }
  38. });

方法二

如果你的文章或者文章类型添加了自定义分类,下面的代码可以在 WordPress 后台文章列表添加自定义分类下拉筛选框,快j O 9 t t D 0速通过自定义分类筛选文章。x f k W $ H [确实和上面的方法基本一样,有些客户说上面的筛选显示分类了,但是没作用。可以尝试下面的代码,记得输入自己的分类法名称:

  1. add_action( 'restrict_manage_posts', 'erphp_task_fi; o ~lter_by_tam C ] W A J lxom q ] 4nomies' , 10, 2);
  2. function erphp_task_filter_by_taxonomies( $post_type, $which ) {
  3. if ( 'task' !== $post_type )
  4. return;
  5. $taxonomies = array( 'tO ? ] ) % H O Masks' &x + C - ; w {#41;;//这里可以加多个自定义分类法
  6. foreach ( $ta3 n Pxonomim 3 B ves as $taxonomy_slug ) {
  7. $taxonomy_obj = get_taxonomy( $taxonomy_slug );
  8. $taxonomy_name = $taxonomy_obj->labels->name;
  9. $terL w ) 9 ! { ] l Lms = get_terms( $taxono6 , K = \ b _ c 0my_slug );
  10. echo "<select naV * k V R i g y .me='{$taxonomy_slug}' id='{$taxonomy_sld * d Oug}' class='postform'>";6 ; o ^ E O
  11. ech^ ( z W Go '<option value="">X I D o , 8 %' . sprintf( esc_HTML__( '%s', 'text_domain' ), $taxonomy_name ) . '</option>';
  12. foreach ( $terms as $term ) {
  13. printf(
  14. '<option va7 \ jlue="%1$s" %2$s>%\ R A3$- N a _ d Gs (%4$s)</option>',
  15. $term->slug,
  16. ( ( isset( $_GET[$taxonomy_slug] ) && ( $_GET[$taxonomy_slug] == $term->slug ) ) ? ' selected="selected"' : '' ),
  17. $term->na\ S = w ;me,
  18. $tC r u @ $ 6 ~ eerm->count
  19. );
  20. }
  21. echo '</select>';
  22. }
  23. }

给TA打赏
共{{data.count}}人
人已打赏
WordPress教程

禁止 WordPress 评论存储IP地址

2022-7-15 14:44:44

WordPress教程

为WordPress添加“点击展开/收缩”短代码 功能

2022-7-22 14:30:50

下载说明

  • 1、微码盒所提供的压缩包若无特别说明,解压密码均为weimahe.com
  • 2、下载后文件若为压缩包格式,请安装7Z软件或者其它压缩软件进行解压;
  • 3、文件比较大的时候,建议使用下载工具进行下载,浏览器下载有时候会自动中断,导致下载错误;
  • 4、资源可能会由于内容问题被和谐,导致下载链接不可用,遇到此问题,请到文章页面进行反馈,以便微码盒及时进行更新;
  • 5、其他下载问题请自行搜索教程,这里不一一讲解。

站长声明

本站大部分下载资源收集于网络,只做学习和交流使用,版权归原作者所有;若为付费资源,请在下载后24小时之内自觉删除;若作商业用途,请到原网站购买;由于未及时购买和付费发生的侵权行为,与本站无关。本站发布的内容若侵犯到您的权益,请联系本站删除,我们将及时处理!
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索