web-dev-qa-db-ja.com

特定の投稿タイプの添付ファイルを取得する方法

私はすべての記事の添付ファイルを表示しているこのページを持っています。

これはコードです:

<?php
$args = array(
    'post_type' => 'attachment',
    'post_status' => 'published',
    'posts_per_page' =>25,
    'post_parent' => null, // Post-> ID;
    'numberposts' => null,
);

$attachments = get_posts($args);

$post_count = count ($attachments);

if ($attachments) {
    foreach ($attachments as $attachment) {
    echo "<div class=\"post photo col3\">";
        $url = get_attachment_link($attachment->ID);// extraigo la _posturl del attachmnet      
        $img = wp_get_attachment_url($attachment->ID);
        $title = get_the_title($attachment->post_parent);//extraigo titulo
        echo '<a href="'.$url.'"><img title="'.$title.'" src="'.$img.'"></a>';
        echo "</div>";
    }   
}
?>

今、私は 'post'、 'page'、 'videos'というpost_typeを持っています。それらすべてを取得していますが、 'post' post_typeのみを表示したいです。 'video' post_typeを除外するにはどうすればよいですか

ありがとうございます。

4
user1341839
$posts = get_posts( array( 'post_type' => 'post', 'posts_per_page' => -1 ) );

     foreach ( $posts as $post ) {

         $attachments = get_children( array (
            'post_parent'    => $post->ID,
            'post_type'      => 'attachment',
            'post_mime_type' => 'image',
            'post_per_page'  => 25
        ), ARRAY_A );


      if( $attachments ) {
         //continue with what you were doing

      }
   }
1
Chris_O

次のコードを投稿ファイルの任意の場所に貼り付けるだけで、添付ファイルが表示されます。

$ args = array(
 'post_type' => 'attachment'、
 'numberposts' => null、
 'post_status' => null、
 'post_parent '=> $ post-> ID 
); 
 $ attachments = get_posts($ args); 
 if($ attachments){
 foreach($ attachmentとしての$ attachments){
 echo apply_filters( 'the_title' 、$ attachment-> post_title); 
 the_attachment_link($ attachment-> ID、false); 
} 
} 
0
Selva Balaji