it-swarm-id.com

Menampilkan thumbnail tulisan (lampiran) pada daftar kategori archive.php

Saya mencari untuk menyesuaikan daftar kategori saya (archive.php) sehingga menunjukkan gambar thumbnail dari gambar pertama yang dilampirkan pada setiap posting

Namun, tampaknya file archive.php adalah salah satu yang tidak mendukung objek lampiran. Misalnya, kode di bawah ini akan melakukan sebagian besar dari apa yang saya inginkan (walaupun jika tidak ada lampiran yang ditemukan, saya mendapatkan gambar kosong, saya harus memperbaikinya).

Namun, saya takut memiliki SELECT dalam satu lingkaran seperti ini mungkin terlalu mahal untuk apa yang saya coba lakukan.

Ada ide?

    <?php while (have_posts()) : the_post(); ?>
    <?php global $wpdb; $attachment_id = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE post_parent = '$post->ID' AND post_status = 'inherit' AND post_type='attachment' ORDER BY post_date DESC LIMIT 1"); ?>
        <div class="searchItem" style="clear:both;">
            <h3 id="post-<?php the_ID(); ?>"><img src="<?php echo wp_get_attachment_url($attachment_id); ?>" class="post-attachment" /><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h3>
            <small><?php the_time('l, F jS, Y') ?></small>
            <div class="excerpt"><?php echo $post->post_excerpt; ?></div>
            <div class="postmetadata">Posted in <?php the_category(', ') ?> | <?php comments_popup_link('No Comments &#187;', '1 Comment &#187;', '% Comments &#187;'); ?></div>
        </div>
    <?php endwhile; ?>
1
Scott B

Anda bisa menggunakan fungsi WordPress get_children. Meskipun saya tidak berpikir itu membuat perbedaan, kinerja bijaksana.

<?php while (have_posts()) : the_post(); ?>
    <?php $attachment = array_values( get_children( array( 'post_parent' => $post->ID, 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'numberposts'  => 1 ) ) ); ?>
    <div class="searchItem" style="clear:both;">
        <h3 id="post-<?php the_ID(); ?>">
        <?php if( $attachment ) echo '<img src="' . wp_get_attachment_url($attachment[0]->ID) . '" class="post-attachment" />'; ?>
        <a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h3>
        <small><?php the_time('l, F jS, Y') ?></small>
        <div class="excerpt"><?php echo $post->post_excerpt; ?></div>
        <div class="postmetadata">Posted in <?php the_category(', ') ?> | <?php comments_popup_link('No Comments &#187;', '1 Comment &#187;', '% Comments &#187;'); ?></div>
    </div>
<?php endwhile; ?>
2
sorich87

WP memiliki fungsi inti untuk melihat ini, lihat posting saya http://wpengineer.com/1735/easier-better-solutions-to-get-pictures-on-your-posts/

0
bueltge