我试图找到一种从帖子或wordpress的内置图像库中提取随机图像的方法。我不知道如何从帖子或媒体库查询图像uris - 是否有我可以采用的标签或方法?我应该用PHP编写一些东西来手动查询wordpress数据库吗?如果是这样,返回图片网址的最有效方法是什么?
P.S。我会在Wordpress Stack上发布这个,但它似乎更像是一个技术问题,而不是一个特定于wordpress的问题所以我带来了这里。 Wordpress堆栈问题有一个不能得到回答的坏习惯。
答案 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';
}
}