即使在Wordpress中元值为空,如何检查自定义字段是否存在

Eme*_*ngo 2 wordpress custom-fields

我有一个非常好的工作条件来检查自定义字段是否存在,这是一行:

if (((get_post_meta($post->ID, $my_metakey, TRUE))=='')
Run Code Online (Sandbox Code Playgroud)

但是,正如您所注意到的,只有在元值设置为空时检查元键才有效.

我想知道如何检查数据库中是否已存在自定义字段名称/元键,即使我将元值设置为空或默认为空.

使用Wordpress有一种有效的方法吗?谢谢你的提示.

更新:这个也行不通:

<?php if (strlen(get_post_meta($post->ID, $metakey, true)) > 0) : ?>
Run Code Online (Sandbox Code Playgroud)

因为它类似于检查自定义字段是否为空.

小智 12

使用WP 3.3.0,有一种更好的方法:使用缓存并应用过滤器

 metadata_exists( 'post', $post->ID, $my_metakey )
Run Code Online (Sandbox Code Playgroud)