用于从WP中的媒体库中获取特定图像ID的功能

时间:2013-07-16 13:38:46

标签: arrays image media wordpress

我想抓取161到166的图像,而不必调用我的整个媒体库阵列并且必须将它们拼接起来。随着时间的推移,我在那里越多,我的网站就越慢。以下是我到目前为止的情况,我使用array_reverse来反转ID,以便最近的上传是最后一次,我使用array_splice来查找我需要提取的图像。有没有更直接的方式让我找到ID为161到166的图像?

       function get_images_from_media_library() {
            $args = array(
                'post_type' => 'attachment',
                'post_mime_type' =>'image',
                'post_status' => 'inherit',
                'posts_per_page' => -1,
            );
            $query_images = new WP_Query( $args );
            $images = array();
            foreach ( $query_images->posts as $image) {
                $images[]= $image->guid;
            }
            $images = array_reverse($images);
            $images = array_splice($images, 3,6);
            return $images;
        }

        $img = get_images_from_media_library();
        foreach($img as $image){
            echo "<img src='$image'/>";
        }

1 个答案:

答案 0 :(得分:0)

使用自定义查询尝试此代码.....

$img=$wpdb->get_results("select guid from ".$wpdb->prefix."posts where post_type='attachment' and post_mime_type like 'image/%' and ID between 161 and 166"); // Query to fetch images
foreach($img as $image){
echo "<img src='$image->guid'/>";}