Просматривайте пользовательские термины таксономии и отображайте сгруппированные сообщения по термину - PullRequest
0 голосов
/ 08 октября 2018

У меня есть пользовательская таксономия под названием «отрасль», которую я добавил в WooCommerce, и я успешно перетаскиваю прекрасную страницу, полную терминов таксономии родительского уровня.Все родительские термины имеют дочерние термины, а продукты присваиваются ТОЛЬКО дочерним терминам в организационных целях.

пример:

Родитель : сельское хозяйство Ребенок 1 : танки Внук 1 : Хранение (5 товаров) Grandchild 2 : мобильные (3 товара)и т. д.

Моя проблема в том, что когда я нажимаю на родителя, я попадаю на обычную страницу woocom, на которой все продукты под этим родителем отображаются в виде несгруппированного списка.

What I 'Мне действительно нравится иметь возможность нажимать на родителя и переходить на страницу, где товары для детей / внуков организованы по семестрам для детей и внуков.

Последние 6 часов я провел, обыскиваяИнтернет для запроса, который будет работать, но безрезультатно.Мне удобно манипулировать запросами, которые работают, но я не могу написать этот самостоятельно.

На мой взгляд, это должно работать так:

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

Любая помощь будет принята с благодарностью, я вырываю свои волосы здесь!

Я могу получить список всех терминов со всеми продуктами из каждого, но ребенок / внук не имеет организации со следующим:

<?php
$_terms = get_terms( array('industry') );

foreach ($_terms as $term) :

    $term_slug = $term->slug;
    $_posts = new WP_Query( array(
                'post_type'         => 'product',
                'posts_per_page'    => -1,
                'tax_query' => array(
                    array(
                        'taxonomy' => 'industry',
                        'field'    => 'slug',
                        'terms'    => $term_slug,
                    ),
                ),
            ));

    if( $_posts->have_posts() ) :

        echo '<h3>'. $term->name .'</h3>';
        while ( $_posts->have_posts() ) : $_posts->the_post();
        ?>
            <div class="col-md-6">
                <h4><?php the_title(); ?></h4>
                <p><?php get_post_meta( get_the_ID(), 'url', true ); ?></p>
            </div>
        <?php
        endwhile;

    endif;
    wp_reset_postdata();

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