'orderby'pre_get_post上的多个元键/值

时间:2015-03-23 09:59:35

标签: php wordpress custom-post-type

方案: 我有一个archive-job.php模板和一个pre_get_post函数:

function cbk_job_archive_override($query) {
    if ( is_post_type_archive( 'job' ) && $query->is_main_query() ) {
        $query->set('orderby', 'menu_order');
        $query->set('order', 'ASC');
    }
}

工作'帖子类型有2个额外的自定义元字段,' cmb_job_featured'和' cmb_job_publishdate'我想订购而不是menu_order。

' cmb_job_featured'自定义元字段可以有“是”和“是”。或者没有'值

&c; cmb_job_publishdate'自定义元字段以此日期格式保存:' yyyy / mm / dd'

我需要所有有' cmb_job_featured'设置为“是”首先显示,然后通过“cmb_job_publishdate”显示所有其他帖子。最近的第一次。

我需要将我的pre_get_post函数编辑成一些如何组合:

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

$query->set( 'orderby', 'meta_value' );
$query->set( 'meta_key', 'cmb_job_publishdate' );
$query->set( 'order', 'ASC' );

0 个答案:

没有答案