我正在制作电影档案。对于每部电影,我填写3个国家/地区的发布日期,它们存储为自定义字段(通过Pod添加)
现在,在列出电影时,我想构建一个数组并遍历每个帖子以检查字段是否有值,然后比较值并按第一个日期(最早或最近的日期)排序。如果没有字段具有值,则应使用发布日期进行排序。我正在使用此代码进行类似的
function orderby_additionaldate($query) {
if (! is_admin() && $query->is_main_query() && is_category( array( 2,57,530 ) ) || cat_is_ancestor_of(2, get_query_var('cat') ) && $query->is_main_query() && ! is_admin() || cat_is_ancestor_of(57, get_query_var('cat') ) && $query->is_main_query() && ! is_admin() || cat_is_ancestor_of(530, get_query_var('cat') ) && $query->is_main_query() && ! is_admin() ) {
if ( $query->query_vars ) {
$query->set( 'order', 'DESC' );
$query->set( 'meta_key', 'additional_date' );
$query->set( 'orderby', 'meta_value' );
}
}
}
add_action( 'pre_get_posts', 'orderby_additionaldate' );
这里缺少两件事:
release_f
,release_uk
和release_us
)。答案 0 :(得分:0)
检查是否存在将$ mykey_values置于条件中的值 http://codex.wordpress.org/Function_Reference/get_post_custom_values
$mykey_values = get_post_custom_values('additional_date');