mildfuzz
  • 0
Мастер

Как я могу назвать статью из каждой категории и по-прежнему правильно разбивать страницы?

  • 0

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

Мой текущий цикл просто получает 3 сообщения за раз. Разумно предположить, что 3 не будут принадлежать каждой категории.

Вот петля:

<?php

            global $query_string;
            parse_str( $query_string, $my_query_array );
            $paged = ( isset( $my_query_array['paged'] ) && !empty( $my_query_array['paged'] ) ) ? $my_query_array['paged'] : 1;
            query_posts('post_type=post&posts_per_page=3&paged='.$paged);


            if ( have_posts() ) : while ( have_posts() ) : the_post();

            $category = choose_one_category(get_the_category());

            switch ($category){
                case "Festival News":
                    $left[] = $post;
                    break;
                case "Industry News":
                    $centre[] = $post;
                    break;
                case "Other":
                    $right[] = $post;
                    break;
            }


            endwhile; 
            ?>
            <div class="custom-pagination">

            <div ><?php previous_posts_link('&laquo; Previous') ?></div>

            <div ><?php next_posts_link('Next &raquo;') ?></div>
            </div>
            <?php endif;



            ?>
Share
  1. Моя рекомендация заключалась бы в том, чтобы использовать отдельный запрос для каждого столбца — получая 1 сообщение в каждой категории — и передавать глобальную $paged переменную в каждый. Это должно демонстрировать поведение, которое вы описали в своем вопросе (по крайней мере, на моем сайте).

    Моя установка

    У меня есть верхний раздел, в котором отображаются 5 самых последних сообщений из категории «избранные», если вы находитесь только на странице 1. Затем у меня есть боковая панель, которая отображает первую страницу сообщений из каждой из 3 основных категорий, каждая из которых использует собственный запрос с расширением posts_per_page=1 . Затем у меня есть основной раздел, в котором все сообщения отображаются нормально, по 5 сообщений на каждой странице.

    Первая страница возвращает мои избранные сообщения в слайдере, обычный раздел сообщений под ним и первый пост из моих трех основных категорий на боковой панели. Страница 2 скрывает ползунок «Избранное», возвращает следующие 5 сообщений в основном разделе и второе сообщение в каждой из моих основных категорий. Страница 3 и выше делают то же самое.

    Итак, вам понадобится не один цикл по 3 категориям, а 3 цикла по одной категории, каждый из которых использует глобальную $paged переменную.

    • 0

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

You must login to add an answer.