在WordPress中,自定义字段(custom fields)是一种强大的功能,允许您为帖子(posts)、页面(pages)或其他自定义内容类型(custom post types)添加额外的信息。以下是使用 get_post_meta()
和 update_post_meta()
函数来读取和更新自定义字段的步骤:
读取自定义字段(get_post_meta())
get_post_meta()
函数用于获取特定帖子的自定义字段值。
-
函数原型:
get_post_meta( int $post_id, string $key, bool $single = false )
-
参数:
$post_id
: 帖子的ID。$key
: 自定义字段的键名。$single
: 是否返回单个值。默认为false
,返回一个数组。如果设置为true
,则返回单个值。
-
示例:
$post_id = 42; // 假设这是您要获取自定义字段的帖子的ID $value = get_post_meta( $post_id, 'my_custom_field', true ); echo $value; // 输出自定义字段的值
更新自定义字段(update_post_meta())
update_post_meta()
函数用于更新特定帖子的自定义字段值。如果字段不存在,它将创建该字段。
-
函数原型:
update_post_meta( int $post_id, string $meta_key, mixed $meta_value, mixed $prev_value = '' )
-
参数:
$post_id
: 帖子的ID。$meta_key
: 自定义字段的键名。$meta_value
: 要更新的值。$prev_value
: (可选)如果提供,只有当当前字段值与$prev_value
相匹配时,才会更新字段。
-
示例:
$post_id = 42; // 假设这是您要更新自定义字段的帖子的ID $new_value = 'New Value'; // 新的自定义字段值 update_post_meta( $post_id, 'my_custom_field', $new_value );
注意事项
- 在使用这些函数之前,确保您已经在WordPress中设置了正确的自定义字段。
- 自定义字段的键名应该使用下划线(_)而不是破折号(-)来命名,以避免与WordPress内置字段冲突。
- 如果您正在更新一个可能存在多个值的自定义字段(例如,复选框或多项选择),请不要使用
$single = true
参数,因为这会将所有值合并为一个字符串。
通过上述步骤,您可以在WordPress中有效地读取和更新自定义字段。