Cómo verificar si existe o no una clave meta de entrada en la base de datos de WordPress

25 jul 2012, 12:34:06
Vistas: 38.6K
Votos: 14

Quiero verificar si existe o no una clave meta de entrada, fuera del loop. ¿Existe alguna función de WordPress para comprobar si una clave meta de entrada existe o no en la base de datos de WordPress? Necesito hacer esta verificación fuera del loop. Cualquier ayuda será muy apreciada.

1
Comentarios

posible duplicado de Estrategia para obtener meta datos de publicaciones para usar fuera del bucle

Brian Fegter Brian Fegter
25 jul 2012 13:03:41
Todas las respuestas a la pregunta 2
1
37

En caso de que alguien más se encuentre con esta antigua pregunta como me acaba de pasar a mí, parece que la mejor forma de manejar esto es usando metadata_exists()

ver https://developer.wordpress.org/reference/functions/metadata_exists/

Aquí está cómo sería la sintaxis para post meta:

metadata_exists('post', $post_id, 'meta_key_to_check');
14 sept 2016 01:34:03
Comentarios

Esta es una respuesta clara y acertada: ten en cuenta que el primer argumento no es un tipo de post, sino un grupo de objetos, básicamente vinculado a la tabla principal donde se almacenan los metadatos.

Q Studio Q Studio
6 oct 2022 12:15:55
1

Podrías usar get_post_custom(ID_DEL_POST_AQUI) que devolverá un array multidimensional con todos los campos personalizados de un post o página en particular.

Así que algo como:

$meta_data = get_post_custom(785);
if ($meta_data['mi_meta_clave'][0] != "")
    ...

te permitiría verificar si una meta_key en particular está vacía o no.

25 jul 2012 13:31:41
Comentarios

Debes usar isset( $meta_data['my_meta_key'][0] ) para verificar si existe. Si solo quieres saber si está vacío O no existe, puedes usar directamente get_post_meta.

NextGenThemes NextGenThemes
14 dic 2020 07:17:35