> WordPress中文手册 > wordpress添加自定义(meta)字段:add_post_meta()

【描述】
add_post_meta为指定文章添加自定义(meta)字段。

若$unique参数设为true且已指定meta关键字,函数返回false,不作更改;否则返回true。
【用法】

<?PHP add_post_meta($post_id, $meta_key, $meta_value, $unique); ?> 

【参数】

$post_id

(整数)(必需)将添加自定义字段的页面编号。

默认值:None

meta_key

(字符)(必需)将添加的自定义字段的关键字

默认值:None

meta_value

(字符)(必需)将添加自定义字段的值

默认值:None

$unique

(布尔值)(可选)是否需要将关键字设为唯一。默认值为true时,参数确保文章中没有自定义字段以$meta_key作为关键字,如果有则不添加该关键字。

默认值:false
【示例】

缺省用法

<?php add_post_meta(68, 'my_key', 47); ?>  

添加或升级特有字段

关键字不存在时添加新字段,关键字存在时则更新已有字段。(UPDATE:add_post_meta第四个参数为真时,若字段已存在时则不再更新(经WP2.6.2测试)。在(!update_post_meta(…)) add_post_meta(…)) 时使用。

<?php add_post_meta(7, 'fruit', 'banana', true) or update_post_meta(7, 'fruit', 'banana'); ?>  

其他示例 如果希望确定关键字”my_key”不带有其他字段,可以在前面添加:

<?php add_post_meta(68, 'my_key', '47', true); ?>  

为”my_key”添加不同值:

<?php add_post_meta(68, 'my_key', '47'); ?>  
<?php add_post_meta(68, 'my_key', '682'); ?>  
<?php add_post_meta(68, 'my_key', 'The quick, brown fox jumped over the lazy dog.'); ?>  

...

制作“隐藏的”自定义字段

插件/主题开发人员如果需要用自定义字段来保存插件或模板相关参数,会发现WordPress不会在页面/文章编辑页的自定义字段列表上显示以”_”(下划线)开始的关键字。这样就可以在自定义参数中将下划线作为第一个字符,这些设置将按自定义字段被保留,但却不会在管理者用户界面的自定义字段中显示出来。

下面这个示例:

<?php add_post_meta(68, '_color', 'red', true); ?>  

将添加一个关键字为”_color”、值为”red”的唯一自定义字段,但该字段不在页面/文章编辑页上显示。

【源代码】

add_post_meta() 位于 wp-includes/post.php