使用WordPress函数get_metadata()检索指定对象类型和ID的元数据字段值
检索指定对象的元数据。如果元字段存在,则如果$single为真,则返回单个值,如果为假,则返回一个值数组。如果 meta 字段不存在,结果取决于get_metadata_default() 。默认情况下,如果$single为真,则返回一个空字符串,如果为假,则返回一个空数组。
WordPress 中的函数get_metadata
用于检索指定对象的元数据。该函数可用于检索有关 WordPress 中的帖子、用户、评论或术语的其他信息。它允许开发人员访问和显示与这些对象相关的特定元数据,例如自定义字段、用户元数据或术语元数据。
通过使用该get_metadata
功能,开发人员可以访问和显示其 WordPress 网站内各种对象的相关元数据。这对于创建自定义模板、显示帖子或用户个人资料的附加信息或根据特定元数据值创建自定义功能特别有用。
推荐:[最新版]WordPress SEO插件Rank Math Pro
get_metadata()基本语法
描述
检索指定对象类型和 ID 的元数据字段的值
用法
get_metadata($meta_type, $object_id, $meta_key = '', $single = false);
$meta_type (string)
– 必填。对象元数据的类型。接受“帖子”、“评论”、“术语”、“用户”或任何其他具有关联元表的对象类型。$object_id (int)
– 必填。对象元数据的 ID。$meta_key (string)
– 可选。元数据键。如果未指定,则检索指定对象的所有元数据。默认值:”。$single (bool)
– 可选。如果为 true,则仅返回指定的第一个值。如果未指定,$meta_key
此参数无效。默认值:false。$meta_key
推荐:[最新版]YITH WooCommerce Tab Manager Premium插件WordPress WooCommerce选项卡插件
get_metadata()函数
检索指定对象的元数据,如果传递了有效但不存在的对象 ID,则为空字符串(源文件可参考这里)
function get_metadata( $meta_type, $object_id, $meta_key = '', $single = false ) {
$value = get_metadata_raw( $meta_type, $object_id, $meta_key, $single );
if ( ! is_null( $value ) ) {
return $value;
}
return get_metadata_default( $meta_type, $object_id, $meta_key, $single );
}
推荐:Max Mega Menu插件教程WordPress添加超级菜单
如何使用get_metadata()
获取帖子的所有元数据
// Get all metadata for a post with ID 123
$all_metadata = get_metadata('post', 123);
获取帖子的特定元数据值
// Get the value of 'my_custom_key' for a post with ID 123
$meta_value = get_metadata('post', 123, 'my_custom_key', true);
获取用户的特定元数据键的所有值
// Get all values of 'my_custom_key' for a user with ID 456
$meta_values = get_metadata('user', 456, 'my_custom_key');
获取某个术语的所有元数据
// Get all metadata for a term with ID 789
$term_metadata = get_metadata('term', 789);
获取评论的特定元数据值
// Get the value of 'comment_rating' for a comment with ID 111 $comment_rating = get_metadata('comment', 111, 'comment_rating', true);
如何使用 get_metadata 函数检查帖子元数据是否存在,此代码片段使用该函数检查 ID 为 789 的特定帖子的特色图片元数据是否存在get_metadata
。如果元数据不为空,它会输出一条消息,表明特色图片存在;否则,它会显示一条消息,表明未找到特色图片。
$post_id = 789;
$meta_key = 'featured_image';
$metadata = get_metadata( 'post', $post_id, $meta_key );
if ( !empty( $metadata ) ) {
echo 'Featured image exists for post ID 789';
} else {
echo 'No featured image found for post ID 789';
}
如何使用 get_metadata 函数获取用户元数据,此代码片段使用该函数获取用户角色中 ID 为 456 的特定用户的元数据值get_metadata
。该$single
参数设置为 true 以返回单个值。
$user_id = 456;
$meta_key = 'user_role';
$single = true;
$metadata = get_metadata( 'user', $user_id, $meta_key, $single );
推荐:[最新版]WP Speed of Light Pro插件WordPress速度优化插件