¿Cómo obtengo el nombre de la categoría principal en la plantilla de WordPress? ¿Y puedo consultar la publicación por categoría principal?

2 minutos de lectura

Intenté obtener ayuda en los foros de WordPress pero no tuve suerte. De todos modos, aquí está mi pregunta…

Digamos que estoy creando 10 categorías de padres y 2 subcategorías para cada padre. Mi publicación de WordPress pertenece a una subcategoría de una categoría principal en particular

¿Cómo obtengo SOLAMENTE el nombre de la categoría principal? ¿No quiero nombres de subcategorías? ¿Qué código de WordPress haría eso?

Y una pregunta más…

¿Es posible consultar la publicación del padre de una subcategoría usando:

pero en vez de entrar cat=1 o el nombre de la categoría en particular, ¿puedo hacer algo como:

Entonces, ¿de esta manera insertaría y consultaría automáticamente la publicación para el padre de cualquier subcategoría en particular en la que se haya hecho clic?

  • Parece que falta algo de texto en tu publicación.

    – JuanK

    13 de marzo de 2013 a las 1:39

Para obtener el nombre de la categoría principal, utilice el get_cat_name() función, con el padre como parámetro, así:

$cat = get_the_category();
$parentCatName = get_cat_name($cat[0]->parent);

Todas estas respuestas fallaron para mí.

Eventualmente logré mostrar el nombre de la categoría superior de una publicación como esta:

        $categories = get_the_category();
        $category= '';
        foreach($categories as $childcat) {
            $parentcat = $childcat->category_parent;
            if($parentcat>0){
                $category = get_cat_name($parentcat);
                continue;
             }
        }
        $category = (strlen($category)>0)? $category :  $categories[0]->cat_name;

Encontré esta respuesta, que te da la primera babosa ancestral. Podría modificarse fácilmente para darle el nombre.

Lo tengo aquí: http://nick.boldison.com/wordpress/wordpress-get-top-level-parent-category/

<?php
// get parent category slug
$parentCatList = get_category_parents($cat,false,',');
$parentCatListArray = split(",",$parentCatList);
$topParentName = $parentCatListArray[0];
$sdacReplace = array(" " => "-", "(" => "", ")" => "");
$topParent = strtolower(strtr($topParentName,$sdacReplace));
?>

De hecho, para obtener el nombre principal:

// get parent category slug
$parentCatList = get_category_parents($cat,false,',');
$parentCatListArray = split(",",$parentCatList);
$topParentName = $parentCatListArray[0];

Muchas respuestas y ejemplos en los documentos de WordPress:

obtener padres de categoría

obtener la categoría

(Y parece que algunos fragmentos de código u otro texto no aparecieron en su pregunta original)

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad