Skip Navigation

[Resuelto] Taxonomy count for a post

Este hilo está resuelto. Aquí tiene una descripción del problema y la solución.

Problem:

The issue here is that the user wanted to count the number of terms that is attached to a post.

Solution:

// Add Shortcode
function count_post_terms( $atts ) {
    // Attributes
    $atts = shortcode_atts(
        array(
            'post_id' => '',
            'taxonomy' => '',
        ),
        $atts
    );
    $terms = wp_get_post_terms( $atts['post_id'], $atts['taxonomy']);
    return count($terms);
}

add_shortcode( 'count_post_terms', 'count_post_terms' );

Add the shortcode above to your functions.php file and you can use this shortcode [count_post_terms] to count the terms attached to a post.

The exact example is.

1
[count_post_terms post_id='[wpv-post-id]' taxonomy='category']
In order to use this in our views conditional shortcode you need to add it to our views 3rd party shortcode arguments in Toolset->Settings->Frontend Content.

This support ticket is created hace 6 años, 4 meses. There's a good chance that you are reading advice that it now obsolete.

This is the technical support forum for Toolset - a suite of plugins for developing WordPress sites without writing PHP.

Everyone can read this forum, but only Toolset clients can post in it. Toolset support works 6 days per week, 19 hours per day.

Hoy no hay técnicos de soporte disponibles en el foro Juego de herramientas. Siéntase libre de enviar sus tiques y les daremos trámite tan pronto como estemos disponibles en línea. Gracias por su comprensión.

Sun Mon Tue Wed Thu Fri Sat
- 9:00 – 12:00 9:00 – 12:00 9:00 – 12:00 9:00 – 12:00 9:00 – 12:00 -
- 13:00 – 18:00 13:00 – 18:00 13:00 – 18:00 14:00 – 18:00 13:00 – 18:00 -

Supporter timezone: America/Jamaica (GMT-05:00)

Etiquetado: 

Este tema contiene 2 respuestas, tiene 2 mensajes.

Última actualización por Tim Elliott hace 6 años, 4 meses.

Asistido por: Shane.

Autor
Mensajes
#953561

Tell us what you are trying to do?
I have a post type "Products" which has a taxonomy "Brochures". Some products have a single brochure, some have more than one, some have none.

I need to format the content template depending on how many brochures there are.
i.e.
[wpv-conditional if="( [number_of_brochures] eq 0 )"]Do Something[/wpv-conditional]
[wpv-conditional if="( [number_of_brochures] eq 1 )"]Do Something else[/wpv-conditional]
[wpv-conditional if="( [number_of_brochures] eq 2 )"]Do Something different[/wpv-conditional]

Is there a shortcode I can use to get a count of the brochures for a particular product?

Is there any documentation that you are following?
I've looked through the shortcode documentation but there doesn't seem to be one for this.
[wpv-taxonomy-post-count] does it in reverse - counts post for a taxonomy but doesn't count taxonomies for a post.
[wpv-post-taxonomy type="product-brochure" show="count"] also counts how many posts with that taxonomy, not the number of taxonomies attached to current post.

Is there a similar example that we can see?

What is the link to your site?
enlace oculto but it's in development at the moment. I can provide access if needed.

Hopefully an easy one...

Thanks
Tim

#953710

Shane
Supporter

Idiomas: Inglés (English )

Zona horaria: America/Jamaica (GMT-05:00)

Hi Tim,

Thank you for contacting our support forum.

// Add Shortcode
function count_post_terms( $atts ) {
	// Attributes
	$atts = shortcode_atts(
		array(
			'post_id' => '',
			'taxonomy' => '',
		),
		$atts
	);
	$terms = wp_get_post_terms( $atts['post_id'], $atts['taxonomy']);
	return count($terms);
}
add_shortcode( 'count_post_terms', 'count_post_terms' );

Add the shortcode above to your functions.php file and you can use this shortcode [count_post_terms] to count the terms attached to a post.

The exact example is.

[count_post_terms post_id='[wpv-post-id]' taxonomy='category']

In order to use this in our views conditional shortcode you need to add it to our views 3rd party shrotcode arguments in Toolset->Settings->Frontend Content.

Thanks,
Shane

#954418

Thanks Shane. Perfect.