我有这个查询 -
<?php if( is_page_template('taxonomy-listing_area-channel.php') ) { ?>
<?php
$posts = get_posts(array(
'post_type' => 'adverts',
'numberposts' => 1,
'order' => 'random',
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'associate_adverts',
'value' => '204',
'compare' => 'LIKE',
)
),
));
?>
<?php //if it's returning the object
foreach($posts as $advert){
$img = get_field("top_advert", $advert->ID);?>
<img src="<?php echo $img["url"]; ?>"/>
<?php }?>
但是对于somr reaosn,帖子只是显示为最后一个进入现在随机,我以前从来没有遇到过这个问题,但我不知道我哪里出错了,非常感谢帮助!
答案 0 :(得分:1)
更改此处,您有语法错误,在双引号内使用单引号,
<img src="<?php echo $img['url']; ?>"/>
答案 1 :(得分:0)
您需要更改此
'post_type' => 'adverts',
'numberposts' => 1,
'order' => 'random',
到
'post_type' => 'adverts',
'posts_per_page' => 1,
'orderby' => 'rand',
现在你的代码看起来像
<?php if( is_page_template('taxonomy-listing_area-channel.php') ) { ?>
<?php
$posts = get_posts(array(
'post_type' => 'adverts',
'posts_per_page' => 1,
'orderby' => 'rand',
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'associate_adverts',
'value' => '204',
'compare' => 'LIKE',
)
),
));
?>
<?php //if it's returning the object
foreach($posts as $advert){
$img = get_field("top_advert", $advert->ID);?>
<img src="<?php echo $img["url"]; ?>"/>
<?php } }?>
您也忘了关闭if
声明。
答案 2 :(得分:0)
感谢所有帮助,
事实证明这是一个需要点击WPEngine以允许查询中的随机函数的框!