Список сообщений из термина таксономии

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

    176.9.5.243/~divesdes/shop

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

    <?php query_posts('post_type=product&product_cat=striped-mats'); ?>
    <?php single_cat_title( ); ?> 
    <?php if ( have_posts() ) : ?>
    <?php while ( have_posts() ) : the_post(); ?>
    <?php the_content();?>
    <?php endwhile; 
      wp_reset_query();?>
    <?php endif; ?>

Спасибо всем, кто захочет помочь мне в этом...


person user2186701    schedule 14.12.2013    source источник


Ответы (2)


Прежде всего, вы можете использовать этот сервис, который может написать код для вас: http://generatewp.com/

Это классный инструмент, позволяющий создавать код для нескольких частей темы WordPress.

В противном случае вы можете использовать класс WP_Query для создания такого объекта запроса:

$products = new WP_Query(
    array(
        'post_type'              => 'product',
        'post_status'            => 'publish',
        'cat'                    => 'product_cat',
        'category_name'          => 'striped-mats',
    )
);

if($products->have_posts())
{
while($products->have_posts())
    {
        $products->the_post();
        // do something
}
}
else
{
// Np products found
}
person KodeFor.Me    schedule 14.12.2013
comment
Не забудьте добавить wp_reset_postdata() после того, как вы выполнили свой запрос. - person Steven Jones; 14.12.2013

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

person user2186701    schedule 16.12.2013