doulutian4843 2018-12-14 15:12
浏览 120
已采纳

Wordpress - CPT和分类法页面上的自定义顺序

I am creating a function to order a specific custom post type (ex : produit). It works well on the CPT archive page but it doesn't work on the custom taxonomy pages (ex: categories) :

function my_pre_get_posts( $query ) {

// do not modify queries in the admin
if( is_admin() ) {

    return $query;

}

// only modify queries for 'produit' post type
if( isset($query->query_vars['post_type']) && $query->query_vars['post_type'] == 'produit') {

    $query->set('orderby', 'meta_value');   
    $query->set('meta_key', 'irank');    
    $query->set('order', 'DESC'); 

}

// return
return $query;

}

add_action('pre_get_posts', 'my_pre_get_posts');

How can I append my code so the custom order applies also to my custom taxonomy pages ?

Thanks a lot

  • 写回答

1条回答 默认 最新

  • doujia2021 2018-12-14 15:57
    关注

    You'll want to use the is_tax() function to check if it's the taxonomy archive you want to alter the sort order on. So something like this...

    if ( $query->is_tax( 'produit-category' ) && $query->is_main_query() ) {
    
        $query->set('orderby', 'meta_value');   
        $query->set('meta_key', 'irank');    
        $query->set('order', 'DESC'); 
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助