如何在 wordpress 中使用 tax_query 显示自定义循环中使用的术语名称
How to display the term name used in a custom loop using a tax_query in wordpress
我想根据 tax_query 中使用的术语 slug 动态显示 'term name'。
我需要值 Novedades,它是我在 'terms' => 'novedades'
.
中使用的带有段塞 'novedades' 的术语的名称
应该显示在h2标签中。我如何获取该值?
我的代码:
<?php
$args = array(
'post_type' => 'cuadros',
'post_per_page' => 4,
'tax_query' => array(
array(
'taxonomy' => 'tipo_de_cuadro',
'field' => 'slug',
'terms' => 'novedades'
),
),
);
$postQuery = new WP_Query($args);
?>
<?php if ( $postQuery->have_posts()) : ?>
<div class="product-carousel">
<h2> x x x x x x x x x x x x x x </h2>
<div class="owl-carousel">
<?php while( $postQuery->have_posts() ) : $postQuery->the_post(); ?>
<div class="product-carousel__item">
<img src="<?php the_post_thumbnail_url(); ?>" alt="">
<h3><?php the_title(); ?></h3>
<p class="producr-carousel__precio">desde 5</p>
<a href="<?php the_permalink(); ?>" class="producr-carousel__button">Detalles</a>
</div>
<?php endwhile; wp_reset_postdata(); ?>
</div>
</div>
<?php endif; ?>
有几种方法可以做到这一点,但如果您知道鼻涕虫是什么,那么最简单的方法可能是使用 get_term_by
function.
您可以使用 slug 获取所有使用 get_term_by
的术语详细信息,包括名称。这与您的 WP_Query 是分开的,因此您可以在循环外使用它。
<?php
// set up variables for the slug & taxonomy - then this can all be changed dynamically if you need to
$term_slug = "novedades";
$term_taxonomy = "tipo_de_cuadro";
// Pass the slug & taxonomy to get_term_by to get all the term details
$term = get_term_by('slug', $term_slug, $term_taxonomy);
$term_name = $term->name; // get the name from the term
$args = array(
'post_type' => 'cuadros',
'post_per_page' => 4,
'tax_query' => array(
array(
'taxonomy' => $term_taxonomy,
'field' => 'slug',
'terms' => $term_slug
),
),
);
$postQuery = new WP_Query($args);
if ( $postQuery->have_posts()) : ?>
<div class="product-carousel">
<!-- you can use your term_name variable here before you set the_post -->
<h2><?php echo $term_name; ?></h2>
<!-- [do stuff....] -->
</div>
<?php endif; ?>
我想根据 tax_query 中使用的术语 slug 动态显示 'term name'。
我需要值 Novedades,它是我在 'terms' => 'novedades'
.
应该显示在h2标签中。我如何获取该值?
我的代码:
<?php
$args = array(
'post_type' => 'cuadros',
'post_per_page' => 4,
'tax_query' => array(
array(
'taxonomy' => 'tipo_de_cuadro',
'field' => 'slug',
'terms' => 'novedades'
),
),
);
$postQuery = new WP_Query($args);
?>
<?php if ( $postQuery->have_posts()) : ?>
<div class="product-carousel">
<h2> x x x x x x x x x x x x x x </h2>
<div class="owl-carousel">
<?php while( $postQuery->have_posts() ) : $postQuery->the_post(); ?>
<div class="product-carousel__item">
<img src="<?php the_post_thumbnail_url(); ?>" alt="">
<h3><?php the_title(); ?></h3>
<p class="producr-carousel__precio">desde 5</p>
<a href="<?php the_permalink(); ?>" class="producr-carousel__button">Detalles</a>
</div>
<?php endwhile; wp_reset_postdata(); ?>
</div>
</div>
<?php endif; ?>
有几种方法可以做到这一点,但如果您知道鼻涕虫是什么,那么最简单的方法可能是使用 get_term_by
function.
您可以使用 slug 获取所有使用 get_term_by
的术语详细信息,包括名称。这与您的 WP_Query 是分开的,因此您可以在循环外使用它。
<?php
// set up variables for the slug & taxonomy - then this can all be changed dynamically if you need to
$term_slug = "novedades";
$term_taxonomy = "tipo_de_cuadro";
// Pass the slug & taxonomy to get_term_by to get all the term details
$term = get_term_by('slug', $term_slug, $term_taxonomy);
$term_name = $term->name; // get the name from the term
$args = array(
'post_type' => 'cuadros',
'post_per_page' => 4,
'tax_query' => array(
array(
'taxonomy' => $term_taxonomy,
'field' => 'slug',
'terms' => $term_slug
),
),
);
$postQuery = new WP_Query($args);
if ( $postQuery->have_posts()) : ?>
<div class="product-carousel">
<!-- you can use your term_name variable here before you set the_post -->
<h2><?php echo $term_name; ?></h2>
<!-- [do stuff....] -->
</div>
<?php endif; ?>