es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo contar el número de sub-términos para cada término padre en WordPress.

Quiero contar el número de los sub-terminos bajo cada término padre en WordPress.

He creado una taxonomía personalizada en WordPress. Me gustaría mostrar todos los términos de esta taxonomía personalizada en una página personalizada, como:

  1. Quiero mostrar todos los sub-terminos bajo cada término padre en el bucle.
  2. Quiero contar el número de sub-terminos bajo cada término padre.

El número de publicaciones bajo cada término se está contando. Pero tengo problemas con los sub-terminos.

Este es mi código.

“`php
<?php
$args = array(
'taxonomy' => 'pharma',
'get' => 'all',
'parent' => 0,
'hide_empty' => 0
);
$terms = get_terms( $args );
foreach ( $terms as $term ) : ?>
<div class="single_pharma">
<h2 class="pharma_name"><a href="<?php echo esc_url( get_term_link( $term ) ); ?>"><?php echo $term->name; ?></a></h2>

<pre><code> <span class="count_category"><span>Genéricos:</span><?php // quiero mostrar aquí el contador de sub-terminos ?></span>

<span class="count_brand"><span>Marcas:</span><?php echo $term->count; ?></span>
</div>
</code></pre>

“`

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para contar el número de sub-términos bajo cada término padre en WordPress, puedes utilizar la función get_terms() con el parámetro child_of en lugar de parent de la siguiente manera:

    <?php 
        $args = array(
            'taxonomy' => 'pharma',
            'get' => 'all',
            'child_of' => 0, // para términos de nivel superior
            'hide_empty' => 0
        );
        $terms = get_terms( $args );
        foreach ( $terms as $term ) : ?>
        <div class="single_pharma">
            <h2 class="pharma_name"><a href="<?php echo esc_url( get_term_link( $term ) ); ?>"><?php echo $term->name; ?></a></h2>
            <span class="count_category"><span>Genéricos:</span><?php echo count( get_terms( 'pharma', array( 'child_of' => $term->term_id ) ) ); ?></span> <!-- contador de sub-términos -->
            <span class="count_brand"><span>Marcas:</span><?php echo $term->count; ?></span>
        </div>
    <?php endforeach; ?>
    

    Este código mostrará todos los sub-términos bajo cada término padre en el bucle, así como el contador de sub-términos para cada término padre. La función count() se utiliza para contar el número de sub-términos, y el parámetro child_of se establece en el ID del término actual para recuperar sus hijos.

Comments are closed.