👋 ¡Hola a todos!
Me enfrento a un problema de que alguien ya se enfrentó en StackOverflow, pero no recibió una respuesta aquí: https://stackoverflow.com/questions/78854769/elementor-loop-grid-widget-post-taxonomy-guied-object-toxonomonom
Para ser claros, intento filtrar publicaciones con un filtrado de servidor para mostrar solo publicaciones incluidas en una taxonomía elegida en una lista de taxonomías de cuadrícula de bucle.
De hecho, en una cuadrícula de bucle que muestra las subaxonomías de la taxonomía del archivo actual, utilizando este código:
function get_taxonomy_children( $args, $settings, $display_settings ) {
if ( isset( $settings['term_taxonomy_id'] ) && $settings['term_taxonomy_id'] === 'taxonomy_children' ) {
$args['term_taxonomy_id'] = '';
$current_term = get_queried_object();
if ( isset( $current_term->term_id ) ) {
$args['parent'] = $current_term->term_id;
}
}
return $args;
}
add_filter( 'elementor/loop_taxonomy/args', 'get_taxonomy_children', 20, 3 );
Luego quiero mostrar en cada elemento de la categoría la lista de publicaciones asociadas a esta taxonomía.
Por ejemplo, tengo una página que es el archivo del elemento de África en mi taxonomía personalizada de «lugares». Gracias a la función anterior, itera y da a los elementos NED en la cuadrícula del bucle: los hijos directos de África, siendo Senegal, Costa de Marfil, Kenia, etc. Entonces, el objetivo es mostrar todos los puestos en cada uno de estos elementos. Para esto, creé una lista de cuadrícula/publicación de bucle en Elementor, directamente anidado en el elemento de cuadrícula de bucle de mi primera cuadrícula de bucle de subaxonomía, y quería filtrarla en un servidor con una función como la que usé antes.
Sin embargo, parece que no se puede acceder al término ID de los elementos en bucle, incluso después de múltiples intentos:
- Si uso la función
get_queried_object
el objeto consultado es siempre África para cada elemento del bucle, en lugar de ser Senegal, Costa de Marfil, etc. - Y si intento cosas como
get_the_terms(get_the_ID(), 'places')
O cosas así, en cambio obtiene todas las taxonomías de la primera publicación de la lista, que siempre es el primer elemento de una lista de publicaciones ordenada en África, por lo que nuevamente falla. - Luego intenté pasarlo con contenido dinámico de elementor a un código corto para renderizar y luego mi segunda cuadrícula de bucle directamente con el código, pero no puedo encontrar un ID de término en las variables dinámicas y no sé si hay una manera de pasarlo correctamente de forma nativa con cosas como esta
{{term_id}}
u otro.
Entonces, ¿cómo obtener correctamente el término ID del objeto de bucle? ¡No encuentro más solución y realmente me encantaría tu ayuda!
Gracias de antemano 🙏🏻