mathiregister
  • 0
Новичок

Шаблон страницы вложения? Показывать вложения только для текущего сообщения?

  • 0

эй, ребята, я этого не знал, но страница вложений (я использую в качестве шаблона attachment.php) на самом деле перебирает ВСЕ когда-либо загруженные вложения в мой блог!

Я просто хочу использовать его для просмотра изображений галереи и т. Д. Поэтому я просто хочу просмотреть изображения, относящиеся к текущему сообщению.

Есть идеи, как это решить?

вложение.php

<div class="posts-container">   

    <?php get_template_part( 'loop', 'attachment' ); ?>

</div> <!-- posts-container -->

петля-attachment.php

<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>

                <article <?php post_class() ?> id="post-<?php the_ID(); ?>">

                    <div class="entry">

                        <div class="entry-attachment">

<?php if ( wp_attachment_is_image() ) :
    $attachments = array_values( get_children( array( 'post_parent' => $post->post_parent, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID' ) ) );
    foreach ( $attachments as $k => $attachment ) {
        if ( $attachment->ID == $post->ID )
            break;
    }
    $k++;
    // If there is more than 1 image attachment in a gallery
    if ( count( $attachments ) > 1 ) {
        if ( isset( $attachments[ $k ] ) )
            // get the URL of the next image attachment
            $next_attachment_url = get_attachment_link( $attachments[ $k ]->ID );
        else
            // or get the URL of the first image attachment
            $next_attachment_url = get_attachment_link( $attachments[ 0 ]->ID );
    } else {
        // or, if there's only 1 image attachment, get the URL of the image
        $next_attachment_url = wp_get_attachment_url();
    }
?>
                        <div class="attachment">
                            <!-- <a href="<?php echo $next_attachment_url; ?>" title="<?php echo esc_attr( get_the_title() ); ?>" rel="attachment"> -->

                            <?php
                            $attachment_width  = apply_filters( 'attachment_width', 1068 );
                            $attachment_height = apply_filters( 'attachment_height', 1068 );
                            echo wp_get_attachment_image( $post->ID, array( $attachment_width, $attachment_height ) ); // filterable image width with, essentially, no limit for image height.
                        ?>
                            <!-- </a> -->

                            <div class="nav-previous">
                                <?php previous_image_link( false, '&nbsp;' ); ?>
                            </div>
                            <div class="nav-next">
                                <?php next_image_link( false, '&nbsp;' ); ?>
                            </div>

                        </div>

<?php endif; ?>
                        </div><!-- .entry-attachment -->

                        <div class="entry-caption">

                        <?php if ( !empty( $post->post_excerpt ) ) the_excerpt(); ?>

                        </div>

                    </div><!-- entry -->

                </article><!-- post -->

<?php //comments_template(); ?>

<?php endwhile; // end of the loop. ?>
Share
  1. Я думаю, что это зависит от темы, какую тему вы используете, или, что еще лучше, опубликуйте код вашего файла attachement.php.

    • 0
  2. Это attachment.php особый шаблон в иерархии шаблонов WordPress. WordPress использует его для определенной цели, и Цикл по умолчанию просто не будет делать то, что вы утверждаете. (Поведение, которое вы описываете, было бы аналогично single.php файлу шаблона, перебирающему все сообщения.)

    Я предполагаю, что в вашем attachment.php файле шаблона есть собственный цикл. Как Байтернет спрашивал выше, можете ли вы опубликовать или связать разметку вашего attachment.php файла шаблона?

    • 0

Оставить ответ

You must login to add an answer.