Использование двух циклов в wodrpess на одной странице: первый должен быть «встроен» для статической страницы, второй должен быть с пользовательскими аргументами - PullRequest
0 голосов
/ 07 ноября 2019

У меня есть страницы с простым циклом. Он просто отображает содержимое статической страницы. Тем не менее, внизу некоторых страниц мне нужно добавить second loop, в котором будут найдены все сообщения из определенных category. Когда я добавляю второй цикл, моя страница становится пустой - ни первый, ни второй цикл не работают. Я новичок в разработке WordPress, поэтому я что-то упускаю.

Вот упрощенный код на моем page.php:

<?php

// First loop - 'auto' loop. It should just show given page content.
while ( have_posts() ) : the_post();
    get_template_part( 'template-parts/content', 'page' );
endwhile; // End of the loop.

// Second loop - it would contain custom arguments
$category_id = get_categor_for_page(get_the_ID());
if (isset($category_id)) {
    $post_query = new WP_Query( array( 'cat' => $category_id, 'post_type' => 'post');
    while ( $post_query->have_posts() ) : $my_query->the_post();
        // show posts from given category in carousel; for now just show in a list
        get_template_part( 'template-parts/content', 'post' );
    endwhile;
}

1 Ответ

1 голос
/ 07 ноября 2019

Просто добавьте закрывающую скобку) в новом WP_Query и $ post_query-> the_post () вместо $ my_query-> the_post ()

  <?php

    // First loop - 'auto' loop. It should just show given page content.
    while ( have_posts() ) : the_post();
        get_template_part( 'template-parts/content', 'page' );
    endwhile; // End of the loop.

    // Second loop - it would contain custom arguments
    $category_id = get_categor_for_page(get_the_ID());
    if (isset($category_id)) {
        $post_query = new WP_Query( array( 'cat' => $category_id, 'post_type' => 'post'));
        while ( $post_query->have_posts() ) : $post_query->the_post();
            // show posts from given category in carousel; for now just show in a list
            get_template_part( 'template-parts/content', 'post' );
        endwhile;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...