Trabajar con los metadatos de WordPress

Home » Blog » Trabajar con los metadatos de WordPress

Hemos visto como podemos añadir nuevos módulos para gestionar diferente información más halla de las entradas y las páginas de WordPress. En estos módulos podemos indicar los campos básicos y entre otras opciones esta la de incluir campos personalizados. Estos campos se crean dentro de cada entrada y cada entrada puede tener unos u otros.

Vamos a ver como podemos añadir, modificar, recuperar o borrar campos personalizados.

Añadir un metadato a una entrada

Add_post_meta($id, $meta_key, $meta_vale,  $unique): con esta función podemos añadir un campo personalizado con su valor a una entrada concreta, el último campo es para indicar si la clave es exclusiva para esta entrada.

Este valor aparecerá en la edición de la entrada, si queremos que no aparezca para evitar que alguien lo pueda borrar o cambiar debemos darle un $meta_key con guion bajo (_).

add_post_meta(40, 'precio_key', '35', true);

En este ejemplo estamos añadiendo en la entrada ID = 40 un campo personalizado precio_key con el valor 35. Si vamos a editar la entrada podemos ver como aparece el campo precio_key en los campos personalizados.

Actualizar un metadato de una entrada

Update_post_meta($id, $meta_key, $meta_vale,  $valor_anterior): permite cambiar el valor de un campo personalizado de una entrada, el último campo es por si una entrada tiene múltiples valores de un mismo $meta_key.

update_post_meta(40, 'precio_key', '29');

En este caso estamos actualizando el valor del campo precio_key en la entrada 40.

Borrar metadatos de una entrada

Delete_post_meta($id, $meta_key, $meta_vale): elimina el campo personalizado. Si no se indica el valor se borran todos los valores del campo.

delete_post_meta(40, 'precio_key');

En este caso se elimina el campo precio_key para la entrada 40, sea cual sea su valor. Si introducimos un $meta_value por ejemplo 30,el campo no se mostraría si su valor es igual a 30.

Recuperar metadatos y mostrarlos

Get_post_meta($id, $campo): devuelve un array con los valores del campo personalizado para la entrada especificada.

$valores_campo=get_post_meta(40,'precio_key');

En este caso recuperamos los valores del campo precio_key para la entrada 40, devolviendo por defecto un array (Por ejemplo, imaginemos que tenemos un campo colores con varios valores). Si solo debe devolver un valor, podemos indicarle que nos devuelva el valor añadiendo una ultima condición como true.

Get_post_custom($id): recupera todos los campos personalizados de una entrada. Genera una matriz multidimensional.

$valores_todos_campos=get_post_custom(40);

En este caso obtenemos una matriz multidimensional de todos los campos personalizados y sus metadatos de la entrada 40. Y podemos recorrerlo de la siguiente forma:

foreach ($valores_todos_campos as $campo=>$valores){
   echo $campo." => ";
   foreach ($valores as $nombreValor=>$valor ){
      echo "<br>".$nombreValor." =>";
      echo var_dump($valor);
   }
   echo "<br>";
}
Foto de Iñigo Mezo Alvarez

IÑIGO MEZO ALVAREZ (IMAcreste)


Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Las reseñas son opiniones que las personas dejan en la página local de Google. Si son positivas, estas reseñas ayudarán a mejorar la confianza y credibilidad de una marca.

Participa en nuestro sorteo enviando un email con tu nombre y el asunto «Sorteo AUDITORÍA SEO». Se realizara un sorteo cada mes.

Evaluación EXCELENTE
A base de 7 reseñas
Contactamos con Iñigo para el diseño web de nuestra tienda online y estamos encantados. Su asesoramiento, seguimiento y trato han sido excepcionales. Un verdadero crack. Recomendado al 100%. No dudes en ponerte en contacto con el.
erlantz rique
erlantz rique
19/02/2024
Un acierto quien elija a Iñigo. Autentico profesional, se preocupó en todo momento que entendiera el funcionamiento de la web. Me explicó todo las veces necesarias hasta entenderlo. Se preocupó y acertó en que la web tuviera lo que le pedí y lo hizo con creces. Muy contento con el servicio prestado. Una vez realizado el trabajo, cualquier duda que tengo me sigue ayudando. Lo recomiendo sin temor a equivocarme.
Jose Marlasca
Jose Marlasca
06/02/2024
Dió en la clave y nos dió los instrumentos que necesitábamos en esos momentos, y sobre todo entendió a la perfección lo que buscábamos. Lo mejor de web que hemos tenido en 24 años. Eskerrik asko Mezo!!
Troka Abentura
Troka Abentura
07/01/2024
Compromiso, implicación e innovación en los proyectos. Atento a las necesidades e incansable en la búsqueda de soluciones. Muy buena opción.
Jabier Fuertes Udaondo
Jabier Fuertes Udaondo
07/01/2024
Si buscas a alguien que además de hacer un diseño web moderno, responsivo y adaptado a tu sector, te explique por qué plantea el diseño web de esa manera y que te explique y ayude en posicionar tu web lo mejor posible en base a los objetivos fijados, ese es Iñigo Mezo y os lo recomiendo al 100%
Asier Hermoso
Asier Hermoso
03/01/2024
Genial trabajar con él! Además de ser muy buen profesional, experto y responsable, a destacar tanto su implicación en cada proyecto, así como su trato siempre cercano y su paciencia infinita ;) Un crack!!
itxaso zubia
itxaso zubia
15/12/2023
El plugin gratuito para integrar productos de Prestashop en Wordpress muy sencillo de utilizar y muy bien documentado, os felicito.
Fernando Cózar
Fernando Cózar
02/11/2023