9

なんてこった!投稿のメディアライブラリにあるすべての画像ファイルを一覧表示する方法を探しています。

これが意味するのは、投稿の作成または編集中にファイルがアップロードされた場合、何らかの方法で投稿に関連付けられたファイルであり、このデータからリストを作成できますか。

next_image_link()/ previous_image_link(); テンプレートタグは私が見つけたものと同じくらい近いです。

私はこれが近いはずだと思います:

$query = 'SELECT * FROM `wp_posts` 
WHERE `post_parent` = \''.$_GET['post_id'].'\' 
AND  `post_mime_type` = \'image/jpeg\' 
ORDER BY `menu_order` ASC';

ありがとう。

4

2 に答える 2

12

ワードプレスの用語では、特定の投稿にアップロードしたすべての画像は添付ファイルと呼ばれます。すべての添付ファイルを一覧表示するには、get_children()関数を使用できます。

$images =& get_children( 'post_type=attachment&post_mime_type=image&post_parent=10' );

$counter=0;
foreach( (array) $images as $attachment_id => $attachment )
{
   $counter++;
   echo "<a href='".wp_get_attachment_link( $attachment_id ) . "'>image $counter</a><br />";
}

アルゴリズムはそのようなものです。

于 2009-09-02T20:24:34.430 に答える
0

画像ギャラリーを管理するためのプラグインを探している場合は、プラグインを使用できattachmentsます。

http://wordpress.org/plugins/attachments/

ギャラリーを分離し、投稿コンテンツに画像ギャラリーのショートコードを配置しないため、投稿/ページ/カスタム投稿での画像表示を完全に保持できます。ドラッグアンドドロップするだけで画像の順序を変更することもできます

ギャラリー画像を取得する方法のサンプルコードは次のとおりです。

<?php $attachments = new Attachments( 'attachments' ); /* pass the instance name */ ?>
<?php if( $attachments->exist() ) : ?>
  <h3>Attachments</h3>
  <p>Total Attachments: <?php echo $attachments->total(); ?></p>
  <ul>
    <?php while( $attachments->get() ) : ?>
      <li>
        ID: <?php echo $attachments->id(); ?><br />
        Type: <?php echo $attachments->type(); ?><br />
        Subtype: <?php echo $attachments->subtype(); ?><br />
        URL: <?php echo $attachments->url(); ?><br />
        Image: <?php echo $attachments->image( 'thumbnail' ); ?><br />
        Source: <?php echo $attachments->src( 'full' ); ?><br />
        Size: <?php echo $attachments->filesize(); ?><br />
        Title Field: <?php echo $attachments->field( 'title' ); ?><br />
        Caption Field: <?php echo $attachments->field( 'caption' ); ?>
      </li>
    <?php endwhile; ?>
  </ul>
<?php endif; ?> 
于 2013-07-01T11:44:03.977 に答える