Wordpress媒体库访问PHP

时间:2012-07-05 21:21:53

标签: php mysql wordpress

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

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

1 个答案:

答案 0 :(得分:1)

Wordpress具有内置函数来访问附加到帖子的图像上的数组。我在网上找到了这个功能,它可能就是你正在寻找的东西。它获取附加到帖子的图像,随机排序,并返回第一个的URL:

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