我正在努力解决以下问题: 我安装了一个插件(Event Dates)。 不,我想在我的主页上发布活动。我有99.9%的工作时间。 但是排序不起作用。
它在发布日期排序,但需要按事件日期排序。 事件日期在wp_postmeta表中,但我无法对其进行排序。
以下是更多信息:
<?php
$args=array(
'post_type' => 'tribe_events',
'post_status' => 'publish',
'posts_per_page' => 5,
'meta_key' => '_EventStartDate',
'orderby' => 'meta_value_num',
'order' => 'DESC');
$my_query = '';
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
while ($my_query->have_posts()) : $my_query->the_post(); ?>
<?php $key_2_value = get_post_meta(get_the_ID(), '_EventStartDate', true); ?>
<?php echo '<div class="ex_agendapost_title">'.
date_i18n( 'd F', strtotime( $key_2_value ) ).'</div>';?>
<div class="ex_agenda_event"><a href="<?php the_permalink() ?>"
rel="bookmark" title="<?php the_title_attribute(); ?>">
<?php the_title(); ?> »</a></div>
<?php
endwhile;
}
wp_reset_query();
?>
它只是不会排序。 有什么想法吗?
微米。
答案 0 :(得分:0)
您可以在WP_Query中使用orderby
$query = new WP_Query( array ( 'post_type' => 'product', 'orderby' => 'meta_value', 'meta_key' => 'price' ) );
答案 1 :(得分:0)
以下是一个示例,仅显示未来的日期事件和日期顺序(最新的第一个)
您必须更改字段名称和帖子类型名称:
$currentDate = (int) date('Ymd');
$eventsResult = new WP_Query( array ( 'post_type' => 'event', 'post_status' => 'publish', 'posts_per_page' => '3', 'orderby' => 'meta_value_num', 'meta_key' => 'event_date', 'order' => 'ASC', 'meta_query' => array( array( 'key' => 'event_date', 'value' => $currentDate, 'compare' => '>', 'type' => 'NUMERIC' ) ) ) );