例如,我有一个帖子meta_key
是 'name',meta_value
是 'Jason',
在meta_id
MySQL 中是 128
如何通过 meta_id 获取此 meta_value ?
例如,我有一个帖子meta_key
是 'name',meta_value
是 'Jason',
在meta_id
MySQL 中是 128
如何通过 meta_id 获取此 meta_value ?
最好的方法是使用 WordPress 的内置函数get_metadata_by_mid()
.
所以在你的情况下:
$value = get_metadata_by_mid( 'post', 128 );
我发现这可能会对你有所帮助。
它描述了如何通过 Meta Key 获取 Meta ID,因此它不完全是您需要的,但非常相似。也许所需要的只是稍微修改一下那个查询。
get_metadata_by_mid( $meta_type, $meta_key )
适用于大多数情况。它返回一个包含所有 postmeta 数据的对象。
$jason = get_metadata_by_mid( 'post', 128 );
echo 'Meta Value = ' . $jason->meta_value;
echo 'Post ID = ' . $jason->post_id;
// Results
Meta Value = Jason
Post ID = 123
如果您需要做一些更自定义的事情,例如使用元 ID 获取产品的库存状态。你可以使用这个。
global $wpdb;
$meta_id = 128;
$postmeta_post_id = $wpdb->get_var( $wpdb->prepare("SELECT post_id FROM {$wpdb->prefix}postmeta WHERE meta_id = %d", $meta_id) );
$stock_status = get_post_meta( $postmeta_post_id, '_stock_status', single );
echo 'Product status: ' . $stock_status;
//results
Product status: outofstock