Archived topic
Problema con datos dinámicos
14 replies · Started by Pedro on July 15, 2022
Hola,
He creado un elemento en donde uso la opción de datos dinámicos, para mostrar la categoría de la entrada.
A las entradas, generalmente agregamos más de 1 categoría.
Y este elemento me muestra todas esas categorías.
Así se ve: https://mega.nz/file/nhVzwbIK#m0aSwpiVhzJ94ldZdvtrgJlfW73_Kl9j2YzsPbx1PZQ
Pueden revisarlo aquí: https://alertacripto.com/mercado/la-criptomoneda-con-mejor-rendimiento/
Me gustaría que el elemento, solo muestre la categoría principal de la entrada.
¿Pueden ayudarme con esto?
¡Gracias!
Hi there,
how do you determine what is the Main Category ?
Hola David,
Es la primera categoría que siempre seleccionamos, y la colocamos como categoría primaria.
Además, es la que se mostrará en la URL.
Aquí un ejemplo: https://mega.nz/file/SgMHQJzI#3UTnnpN8XRJ5JLfDN6hVQ3Szz9qawfTJCLbqSD0Dgy4
Enlace de la entrada: https://alertacripto.com/bitcoin/coste-de-produccion-del-bitcoin/
Esa entrada, escogimos "Bitcoin" como categoría principal.
Y como secundaria escogimos "Noticias".
Entonces, la idea es que "Bitcoin" sea la única categoría que se muestre en el elemento que he creado.
So that would be a RankMath function, another user had a similar request, see my reply here:
Hola David,
Gracias por responder.
Sin embargo temo que esta solución no funciona.
Ya que al colocar el shortcode solo me coloca un texto.
Que no puedo colocar con enlace a la categoría ni puedo personalizar para que parezca una etiqueta (como lo tengo actualmente).
¿Podrías ayudarme a solucionar esto?
¡Gracias!
¿Es posible ocultar las demás categorías solo con CSS?
Hi Pedro,
You would need to modify the Rank Math Shortcode itself to display only one category, and make it a link. It can't be done through CSS.
Try replacing your current Shortcode PHP snippet with this:
function get_rank_math_primary_cat() {
$yourTaxonomy = 'category';
$category = get_the_terms( $postId, $yourTaxonomy );
// In Rank Math Primary category is automatical arranged to first category in WP's list of assigned categories
$category_display = $category[0]->name;
$category_link = get_term_link( $category[0]->term_id );
// Display category
if ( !empty($category_display) && !empty($category_link) ){
echo '<a href="' . $category_link . '" class="post-category">' . $category_display . '</a>'; //Replace 'echo' with 'return' for easier control inside templates
}
}
add_shortcode( 'rank-math-primary-category-shortcode', 'get_rank_math_primary_cat' );
This should only get the first category, and make the output a link as well.
Hope this helps!
Hola,
He reemplazado el código y ahora incluye el link.
El problema es, que al colocar el shortcode en el bloque, queda mal alineado.
Aquí una muestra de cómo queda: https://mega.nz/file/24FAjRZa#h-GuQDb8wr4hiFQJZOhYFbRZJppnNKrmzQmcO7k_n8I
Esto, a pesar que lo estoy colocando dentro del bloque del encabezado.
Donde ya están los otros elementos bien alineados.
Aquí la configuración: https://mega.nz/file/Ow1DxajT#afvfgJy6AZdl6THoIub-qJ4Yn2C21ZoAK5L7_f1Vk50
¿Pueden ayudarme con esto?
¡Gracias!
Can you provide the link to where you’ve tried adding the shortcode? I’ll check what’s causing this.
You may use the private information field for this: https://docs.generatepress.com/article/using-the-premium-support-forum/#private-information
Hope to hear from you soon.
Hola Fernando,
En cualquier entrada del sitio.
Este link te puede servir: https://alertacripto.com/blockchain/prestamista-de-criptomonedas-celsius-network-se-declaro-en-quiebra/
La cosa es, he deshabilitado el shortcode porque el sitio está en producción.
Quedo atento.
I see. We’ll need to see the shortcode active to access the issue. Perhaps you can start a staging site?
Or, maybe you can create a test post, and display the shortcode solely in that post.
Let us know.
Hola,
He agregado el shortcode en esta sola entrada:
Try adding object buffering to the shortcode like so:
function get_rank_math_primary_cat() {
$yourTaxonomy = 'category';
$category = get_the_terms( $postId, $yourTaxonomy );
// In Rank Math Primary category is automatical arranged to first category in WP's list of assigned categories
$category_display = $category[0]->name;
$category_link = get_term_link( $category[0]->term_id );
// Display category
if ( !empty($category_display) && !empty($category_link) ){
ob_start();
echo '<a href="' . $category_link . '" class="post-category">' . $category_display . '</a>'; //Replace 'echo' with 'return' for easier control inside templates
return ob_get_clean();
}
}
add_shortcode( 'rank-math-primary-category-shortcode', 'get_rank_math_primary_cat' );
Hola David,
Funcionó perfectamente, muchas gracias!
Glad we could be of help!