2012-07-05 77 views
0

我试图找到一种方法来从一个后或wordpress的内置图像库拉随机图像。我不知道如何从帖子或媒体库查询图像uris - 是否有我可以采用的标签或方法?我应该用PHP写一些东西来手动查询wordpress数据库吗?如果是这样,返回图片网址的最有效方法是什么?WordPress的媒体库访问PHP

P.S.我会在Wordpress Stack上发布这个,但它似乎更像是一个技术问题,而不是一个特定于wordpress的问题,所以我把它带到了这里。 WordPress的堆栈问题有一个不被回答的坏习惯。

回答

1

WordPress的内置函数可以访问贴在图像上的数组。我在网络上找到了这个功能,它可能就是你想要的。它获取连接到后的图像,随机对其进行排序,并返回第一个的网址:

function random_image_url($size=large) { 

    global $post; 
    if ($images = get_posts(array(
     'post_parent' => get_the_ID(), 
     'post_type' => 'attachment', 
     'numberposts' => 1, 
     'orderby' => 'rand', 
     'post_mime_type' => 'image',))) { 

     foreach($images as $image) { 
      $attachmenturl=wp_get_attachment_image_src($image->ID, $size); 
      $attachmenturl=$attachmenturl[0]; 
      echo ''.$attachmenturl.''; 
     } 

    } else { 
     echo '' . get_bloginfo ('stylesheet_directory') . '/img/no-attachment.gif'; 
    } 
} 

source