我想通过分页获取图像库中的所有图像,以便使用infinite-scroll 用它。
无限卷轴可以工作,但它记录的是帖子的数量,而不是图片。这意味着,如果我有6篇帖子,“最多显示2个博客页面”,即使我有更多的图片要加载,页面数也将是3。
我也在使用FoundationPress 作为一个框架,如果这有帮助的话。
这是我的代码:
<?php
$paged = (get_query_var(\'paged\')) ? get_query_var(\'paged\') : 1;
$args = array(
\'posts_per_page\' => 10,
\'post_type\' => \'attachment\',
\'paged\' => $paged
);
$attachments = get_posts( $args );
if ( $attachments ) {
foreach ( $attachments as $attachment ) {
$ia = wp_get_attachment_image_src( $attachment->ID, \'full\' );
?>
<div class="grid__item">
<figure width="<?php echo $ia[1]; ?>" height="<?php echo $ia[2]; ?>">
<?php echo wp_get_attachment_image( $attachment->ID, \'full\' ); ?>
</figure>
</div>
<?php
}
}
?>
SO网友:Harry Francis
编辑:对不起,我没有正确阅读你的代码!
您使用的是只检索帖子的get posts。要从媒体库获取所有图像,您需要使用WP\\u query。
$query_images_args = array(
\'post_type\' => \'attachment\',
\'post_mime_type\' =>\'image\',
\'post_status\' => \'inherit\',
\'posts_per_page\' => -1,
);
$query_images = new WP_Query( $query_images_args );
$images = array();
foreach ( $query_images->posts as $image) {
$images[]= wp_get_attachment_url( $image->ID );
}
此代码将把媒体库中的所有图像URL放入$images数组。
参考号:https://wpeden.com/tipsntuts/list-all-images-at-media-gallery-in-your-wordpress-site/