get_post_meta с WP_query

Я знаю, что это свернутый цикл (унаследованный от кого-то другого), и это должно быть довольно просто: the_permalink и the_title отображаются в порядке, но почему мой пост meta eventdatestart echo ?.

 <?php $queryObject = new WP_Query( 'post_type=events&posts_per_page=5' ); if ($queryObject->have_posts()) { ?> <div id="wrapper""> <h3>Events</h3> <ul> <?php while ($queryObject->have_posts()) { $queryObject->the_post(); ?> <li> <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> <?php echo get_post_meta(get_the_ID(), 'eventdatestart', true );?> </li> <?php } ?> </ul> </div> <?php } ?> 

Solutions Collecting From Web of "get_post_meta с WP_query"

Я думаю, вам может понадобиться добавить global $post после того, как цикл начнется на основе аналогичного вопроса, найденного здесь .

 <?php while ($queryObject->have_posts()) { $queryObject->the_post(); global $post; ?> 

Хотел бы я объяснить, почему, но у меня не было времени для дальнейшего расследования.

Можете ли вы подтвердить, что идентификатор верен? попробуйте get_the_ID() .

Если это проблема, возможно, попробуйте $queryObject->post->ID . Если это работает, вы можете установить его как переменную и использовать в get_the_ID, например:

 $myID = $queryObject->post->ID; echo get_post_meta(get_the_ID($myID), 'eventdatestart', true );