obtener ID de categoría actual en php

24 jul 2012, 17:06:31
Vistas: 77.8K
Votos: 17

Estoy tratando de obtener el ID de la categoría del archivo que se está mostrando actualmente.

He intentado:

// categoría (puede ser una categoría padre)
$current_cat_ID = get_query_var('cat');
//
print_r ($current_cat_ID);

No imprime nada...

php
2
Comentarios

¿dónde se encuentra el código en la plantilla? ¿hay alguna consulta personalizada antes del código?

Michael Michael
24 jul 2012 17:21:05

¿cat siempre estará configurado independientemente de la estructura de enlaces permanentes, o tal vez solo category_name en algunos casos? No recuerdo en este momento...

Milo Milo
24 jul 2012 17:29:20
Todas las respuestas a la pregunta 3
2
57

puedes usar get_queried_object()

$category = get_queried_object();
echo $category->term_id;
24 jul 2012 17:25:46
Comentarios

He estado buscando una respuesta a esto durante horas. Desearía que WordPress tuviera mejor documentación. ¡Gracias!

Django Reinhardt Django Reinhardt
24 feb 2017 17:27:35

@Fayaz Se aplicará automáticamente a esta respuesta.

Django Reinhardt Django Reinhardt
1 mar 2017 13:02:02
1

Un poco más rápido que recibir el objeto y luego mostrar el ID del término es usar directamente get_queried_object_id().

21 dic 2021 11:58:10
Comentarios

Sí, estoy de acuerdo, es extraño que nadie haya mencionado esta función, ambas estuvieron disponibles en la misma versión, WordPress 3.1.0.

Buttered_Toast Buttered_Toast
21 dic 2021 12:05:28
0

Si deseas obtener el ID en una página de categoría, puedes conseguir el ID de la categoría actual con:

$category = get_category( get_query_var( 'cat' ) );
$cat_id = $category->cat_ID;

Si quieres obtener el ID de cualquier categoría específica en cualquier página, puedes probar con el siguiente código:

$category_id = get_cat_ID('Nombre de la Categoría');
28 feb 2017 15:22:51