我有以下查询来获取“myportfoliotype”帖子类型中的所有图像,这种图像工作正常。
但是我希望在加载/刷新页面时所有图像都是随机的。
我遵循了一些教程,并提出了以下代码:
<?php
$query = new WP_Query( array( 'post_type' => 'myportfoliotype', 'posts_per_page' => -1, 'orderby' => 'rand' ) );
if( $query->have_posts() ){
while($query->have_posts()){
$query->the_post();
$do_not_duplicate = $post->ID;
$thumb_id = get_post_thumbnail_id( $post_id );
$image_query = new WP_Query( array('post__not_in' => array (MultiPostThumbnails::has_post_thumbnail('myportfoliotype', 'logo'), $thumb_id ), 'orderby' => 'rand' , 'post_type' => 'attachment', 'post_status' => 'inherit', 'post_mime_type' => 'image', 'posts_per_page' => -1, 'post_parent' => get_the_ID() ) );
while( $image_query->have_posts() ) {
$image_query->the_post();
$do_not_duplicate = $post->ID;
//echo wp_get_attachment_image( get_the_ID() );
$image = wp_get_attachment_image_src(get_the_ID(), 'large');?>
<li> <a class="fancybox" rel="gallery1" href="<?php echo $image[0]; ?>"> <img src="<?php echo get_template_directory_uri(); ?>/js/timthumb.php?src=<?php echo $image[0]; ?>&w=137&h=137&f=2" alt="<?php the_title(); ?>" class="grey"/></a>
<img src="<?php echo get_template_directory_uri(); ?>/js/timthumb.php?src=<?php echo $image[0]; ?>&w=200&h=200" alt="<?php the_title(); ?>" class="color"/>
</li>
<?php
}
}
}
?>
我不太确定这是不对的?如前所述,它会拉动图像但不是随机的....
非常感谢任何帮助或指导。
干杯,丹
答案 0 :(得分:0)
您可能有一个挂钩posts_orderby
过滤器的插件。
如果您不想禁用此插件,可以将'suppress_filters'=>true
添加到WP_Query
参数中。
答案 1 :(得分:0)
我已经解决了我的问题,虽然我会发布答案,但其他人使用“post type order”插件时遇到同样的问题。
在“邮政类型订单”的设置页面中,有一个名为“自动排序”的选项,您需要取消选中此选项,在进行查询时,您应添加以下内容:
$args = array(
'post_type' => 'post-type-here',
'orderby' => 'menu_order',
'order' => 'ASC'
);
就这么简单!
感谢所有帮助人员!