WordPress获取文章自定义字段函数get_post_meta()

平时我们在定制开发wordpress主题的时候,给文章添加自定义字段并在前端获取是再常见不过了,关于添加自定义字段在这里我们不多说,主要介绍一下怎么在前端获取指定文章自定义字段,这个时候我们就需要用到一个wordpress自带函数get_post_meta()。

函数基本用法

<?PHP get_post_meta($post_id,$key,$single); ?>

函数参数说明

$post_id


(integer) (required) 要获取自定义字段的日志 ID。


Default: None

$key


(string) (required) 要获取自定义字段名称(key)。


Default: None

$single


(boolean) (optional) 如果设置为 true,返回单个值。如果 false 或者没设置,则返回自定义字段的数组。


Default: false

函数返回值详解

这个函数返回值比较复杂:

如果只设置了 $post_id 的值,返回该日志的所有自定义字段的关联数组。

如果 $single 设置为 false 或者留空,返回指定 key 的所有值的一个数组。

如果 $single 设置为 true,返回指定 key 的第一个值(并且不是在一个数组中)。

如果没有东西可以返回的时候,返回空数组,除非 $single 设置为 true ,则返回空字符串。

还有一种特殊情况就是,自定义字段的值是序列化的数组,这样 $single 设置为 true,则返回未序列化的数组,而 $single 设置为 false 或者留空,则你会获取一个数组,其中的一个值是序列化之后的字符串,你需要使用 maybe_unserialize 函数将其解析成数组。

函数使用方法举例

获取指定文章的所有自定义字段的值:

<?PHP $Meta = get_post_meta( get_the_ID() ); ?>

获取指定文章指定 key 的 Meta

<?PHP $key_1_values = get_post_meta(1,'key1'); ?>

在主循环中获取指定 key 的第一个

<?PHP

$key_1_value = get_post_meta($post->ID,'key_1',true);

// check if the custom field has a value

if($key_1_value != '') {

echo $key_1_value;

}

?>

以上就是本篇文章关于wordpress获取文章自定义字段函数get_post_meta()的详细介绍以及使用方法举例,希望对您有所帮助。

相关文章

我们有时候在定制WORDPRESS主题的时候,由于菜单样式的要求我...
很多朋友在做wordpree主题制作的时候会经常遇到一个问题,那...
wordpress后台的模块很多,但并不是每个都经常用到。介绍几段...
从WordPress4.2版本开始,如果我们在MYSQL5.1版本数据中导出...
很多网友会遇到这样一个问题,就是WordPress网站上传图片、附...
对于经常要在文章中出现代码的IT相关博客,安装一个代码高亮...