HTML печатать только один раз в Wordpress Loop - PullRequest
1 голос
/ 19 июня 2019

У меня есть фрагмент кода, который находится внутри the_content(); Я использую ACF Repeater .Поэтому, когда я публикую блог, я либо использую the_content();, либо поле acf.У меня есть тег h2 (последние статьи), который я хочу печатать только один раз, но он печатается каждый раз, когда я пишу сообщение.

<?php if (have_posts()): while (have_posts()) : the_post(); ?>
<div class="container"> 
    <div class="row">
        <div class="col-md-4 sidebar-r">
            <?php echo the_content(); ?>
        </div><!-- end sidebar-r -->
        <?php 
            $i = $wp_query->post_count;
            if($i <=1) {
                echo '<h2 class="link-title">
                        <?php the_sub_field('link_title'); ?>,
                    </h2>';
            }else{
                echo '';
            }

        ?>

        <div class="col-md-8 links-wrap">
            <?php if(have_rows('daily_links')): ?>
                <?php while(have_rows('daily_links')): the_row(); ?>
                <a href="<?php the_sub_field('link_url'); ?>" target="_blank">
                    <h2 class="link-title">
                        <?php the_sub_field('link_title'); ?>,
                    </h2>
                    <h3 class="link-source">
                        <?php the_sub_field('link_source'); ?>
                    </h3>
                </a>
                <?php endwhile; ?>
            <?php endif; ?>
        </div><!-- end links wrap --> 
    </div><!-- end row --> 
</div><!-- end container --> 
<?php endwhile; ?>

<?php else : ?>

<?php endif; ?>

Вы увидите, что я пытался использовать php для подсчета сообщений, и, если их несколько, не печатать тег, но не смог понять точную логику и синтаксис.

1 Ответ

1 голос
/ 20 июня 2019

Я, честно говоря, немного изо всех сил пытаюсь понять, что именно вы пытаетесь сделать, и, поскольку у меня нет даже постов и другой ключевой информации, чтобы я мог правильно воспроизвести вашу проблему, чтобы помочь вам лучше, этоэто немного сложно.При этом, изучая некоторые идеи, я наткнулся на другой вопрос / ответ от stackoverflow, который может быть полезен для вас при поиске первого поста и что-то с ним делает.Ответ на указанный вопрос был следующим:

<?php if (have_posts()) : $postCount = 1; while (have_posts()) : $postCount++; ?>

<?php if($postCount == 2) { ?>
  // SOMETHING TO DO WITH FIRST POST
<?php } else { ?>
  // SOMETHING TO DO WITH ALL OTHER POSTS
<?php } ?>

Это было предложено пользователем Бора в этот ответ 2013 .

Позвольтея знаю, помогло ли это!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...