0

投稿またはワードプレスの組み込み画像ライブラリからランダムな画像を取得する方法を見つけようとしています。投稿またはメディアライブラリから画像urisをクエリする方法がわかりません-採用できるタグまたはメソッドはありますか?ワードプレスデータベースを手動でクエリするために、PHPで何かを書く必要がありますか?もしそうなら、画像のURLを返す最も効率的な方法は何ですか?

PS私はこれをWordpressStackに投稿したと思いますが、WordPress固有の質問というよりは技術的な質問のように思えたので、代わりにここに持ってきました。Wordpressスタックの質問には、回答が得られないという悪い習慣があります。

4

1 に答える 1

1

Wordpress には、投稿に添付された画像の配列にアクセスする組み込み関数があります。Web でこの関数を見つけました。まさにあなたが探しているものかもしれません。投稿に添付された画像を取得し、それらをランダムに並べ替えて、最初の画像の 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';
    }
}

ソース

于 2012-07-05T22:28:47.120 に答える