Cómo mostrar campos personalizados fuera del loop en WordPress

¿Quieres mostrar campos personalizados fuera del loop en WordPress? Normalmente, los campos personalizados suelen mostrarse dentro de loop de WordPress junto con la demás información del post y sus metadatos. En este artículo, te indicaré cómo mostrar campos personalizados fuera del loop en WordPress.

¿Qué son los campos personalizados en WordPress?

Los campos personalizados te permiten introducir información adicional en tus posts de WordPress y luego mostrarlos en el contenido.

Puedes añadir campos personalizados simplemente marcando la opción “Campos personalizados” en el desplegable “Opciones de pantalla”, que se sitúa en la parte superior de la página, en la pantalla de inserción o edición de un post. Este tipo de campos, te permitirán introducir información adicional que no encaje con los campos que trae WordPress por defecto, de un modo fácil y cómodo.

Dado que los campos personalizados añaden metadatos a los posts, pueden mostrarse de forma sencilla dentro del loop de WordPress junto al contenido de los propios posts. Sin embargo, puede ser que alguna vez quieras mostrarlos fuera de ese loop. Por ejemplo, en un widget del sidebar. Aquí viene cuando la cosa se pone un pelín más complicada.

Dicho esto, vamos a ver cómo mostrar fácilmente campos personalizados fuera del loop de WordPress.

Mostrar campos personalizados fuera del loop en WordPress

En lugar de mostrar el valor de los campos personalizados fuera del loop, lo que haré será utilizar varios loops en el tema sin que afecten al loop principal.

campos personalizados

Este artículo requiere que agregues código a los archivos de tu tema actual de WordPress. Si no lo has hecho nunca antes, te recomiendo que antes te pases por nuestro artículo ¿Cómo editar ficheros de WordPress mediante un cliente FTP?.

Debes insertar el siguiente código en los archivos de tu tema en los que desees mostrar el valor de los campos personalizados.

<?php
global $wp_query;
$postid = $wp_query->post->ID;
echo get_post_meta($postid, 'Tu-campo-personalizado', true);
wp_reset_query();
?>

Este código simplemente carga la variable global $wp_query para obtener el ID del post. Después, utiliza la función get_post_meta() para extraer y mostrar el contenido del campo personalizado.

No olvides cambiar el “Tu-campo-personalizado” por el campo personalizado que quieras mostrar.

Puedes personalizar el código para que se adapte mejor a tus necesidades. Es decir, puedes utilizar otros parámetros en la query para extrar y mostrar campos personalizados de diferentes posts y páginas.

Vamos a echar un vistazo a otro ejemplo. Aquí utlizamos la clase WP_Query, que es una manera mejor y más flexible de utilizar múltiples liips en los archivos de tu tema de WordPress.

Simplemente agrega este código en el fichero de tu tema (o en tu child theme) en el que desees mostrar el campo personalizado.

$args = array ( 
// ID de la página o el post
'p' => 231,
);

// La Query
$the_query = new WP_Query( $args );

// El Loop
if ( $the_query->have_posts() ) {

while ( $the_query->have_posts() ) {
 $the_query->the_post();
 echo get_post_meta( get_the_ID(), 'Estado', true);
 }


 wp_reset_postdata();

} else {

echo 'No se ha encontrado nada';
 
}

No olvides reemplazar el “Estado” por el nombre de tu campo personalizado y el ID del post por tuyo propio.

Y eso sería todo.

Y hasta aquí nuestro artículo sobre cómo mostrar campos personalizados fuera del loop en WordPress. Espero que te haya gustado y, si te ha resultado útil, no dudes en compartirlo en redes sociales. El artículo está extraído del original de WPBeginner y el icono de la imagen destacada es obra de dilayorganci. ¡Nos leemos!

Dejar respuesta

Please enter your comment!
Please enter your name here