我制作了一个包含一些文章和画廊的页面。一切都显示得很完美,但我想加载一些特殊的文章,所以我使用了以下代码:
<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
query_posts("category_name=actualites&paged=$paged;");
?>
但最终,画廊没有展出。。。我如何才能显示特别的文章,并显示循环中的图库?(我复制了我画廊的代码)
<!-- beginning of the gallery -->
<div id="gallerie">
<?php ;?>
<?php $images = get_field('image_gallery');?>
<?php if( $images ): ?>
<div class="image-home">
<?php foreach( $images as $image ): ?>
<a href="<?php echo $image['url']; ?>">
<img src="<?php echo $image['sizes']['medium']; ?>" alt="<?php echo $image['alt']; ?>" />
</a>
<?php endforeach; ?>
</div>
<?php endif; ?>
</div>
<!-- end of the gallery -->
在第一个代码块之后添加wp_reset_query();
。这会将查询重置回原始查询。如果不这样做,第二个块中的代码将失败。
同样值得注意的是,query_posts()
并不意味着要在插件或主题中使用。点击此处了解更多信息:https://codex.wordpress.org/Function_Reference/query_posts
只显示一个类别的更好方法是这样的:
function my_custom_page( $query ) {
if ( $query->is_page( '{name}' ) ) {
$query->set( 'cat', '{number}' );
}
}
add_action( 'pre_get_posts', 'my_custom_page' );