Enumere todas las subcategorías de la categoría
-
-
Como seexplica aquí,alternativamentepuede usarget_terms (): https://stackoverflow.com/questions/22443352/how-to-get-sub-categories-by-parent-category-id-in-wordpressAs explained here, you can alternatively use get_terms(): https://stackoverflow.com/questions/22443352/how-to-get-sub-categories-by-parent-category-id-in-wordpress
- 0
- 2019-08-07
- retroriff
-
1 respuesta
- votos
-
- 2011-03-30
Sí,puede utilizar get_categories () utilizandoel atributo
'child_of'
. Porejemplo,todas las subcategorías de categoría conel ID 17:$args = array('child_of' => 17); $categories = get_categories( $args ); foreach($categories as $category) { echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> '; echo '<p> Description:'. $category->description . '</p>'; echo '<p> Post Count: '. $category->count . '</p>'; }
Esto obtendrátodas las categorías que son descendientes (es decir,hijos ynietos).
Si deseamostrar solo categorías que son descendientes directos (es decir,solo hijos),puede usarel atributo
'parent'
.$args = array('parent' => 17); $categories = get_categories( $args ); foreach($categories as $category) { echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> '; echo '<p> Description:'. $category->description . '</p>'; echo '<p> Post Count: '. $category->count . '</p>'; }
Yes, you can use get_categories() using
'child_of'
attribute. For example all sub categories of category with the ID of 17:$args = array('child_of' => 17); $categories = get_categories( $args ); foreach($categories as $category) { echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> '; echo '<p> Description:'. $category->description . '</p>'; echo '<p> Post Count: '. $category->count . '</p>'; }
This will get all categories that are descendants (i.e. children & grandchildren).
If you want to display only categories that are direct descendants (i.e. children only) you can use
'parent'
attribute.$args = array('parent' => 17); $categories = get_categories( $args ); foreach($categories as $category) { echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> '; echo '<p> Description:'. $category->description . '</p>'; echo '<p> Post Count: '. $category->count . '</p>'; }
-
** Solo una sugerencia: ** Con lapopularidad de lostipos depublicaciones ytaxonomíaspersonalizadas,creo que seríamejor sugerir `get_terms`,porqueesto ayuda afamiliarizar a los usuarios con lasfuncionesgenerales debúsqueda detérminos,mientras que lasfunciones de categoría son algoespecíficasa lataxonomíaincorporada (aunquenoen todos los casos).Por supuesto,notienes queestar de acuerdo,es solo una sugerencia ...;)**Just a suggestion:** With the popularity of custom post types and taxonomies, i feel it would be better to be suggesting `get_terms`, because this helps familiarise users with general term fetching functions, where as the category functions are somewhat specific to the built-in taxonomy(though not in all cases). You don't have to agree of course, it's just a suggestion... ;)
- 6
- 2011-03-30
- t31os
-
Estoy de acuerdoen que [get_terms ()] (https://developer.wordpress.org/reference/functions/get_terms/)podría sermejor.I agree that [get_terms()](https://developer.wordpress.org/reference/functions/get_terms/) might be better.
- 2
- 2016-04-04
- Django Reinhardt
-
@t31os - ¿podríapublicar una respuesta usando `get_terms`,porfavor?@t31os - could you post an answer using `get_terms` please?
- 0
- 2018-03-30
- vsync
-
tengaen cuenta que,deformapredeterminada,estono leproporcionará categorías quenotenganningunapublicación asociada.use `hide_empty=>false`para obtenertodas las categorías (según la versión reciente de wordpress)please note, by default, this will not get you categories that has no post associated with them. use `hide_empty => false` to get all categories (as per the recent version of wordpress)
- 1
- 2020-02-04
- swadhwa
¿Cómopuedo obtenertodas las subcategorías de una categoría determinada?