使用WordPress函数get_post_custom_values()检索帖子自定义字段值
WordPress 中的函数get_post_custom_values
可检索特定帖子的自定义字段的值。这对于访问和显示与帖子相关的自定义数据(例如附加元数据或与帖子内容相关的特定信息)非常有用。
通过使用此功能,开发人员可以轻松访问和检索自定义字段值,而无需手动查询数据库或编写复杂的自定义代码。这可以简化开发过程,并使在 WordPress 中处理自定义帖子数据变得更加容易。
推荐:[最新版]WordPress SEO插件Rank Math Pro
get_post_custom_values()基本语法
描述
WordPress PHP get_post_custom_values()函数检索自定义帖子字段的值
用法
get_post_custom_values($key, $post_id);
$key
(字符串)– 可选。元字段键。默认值:”$post_id
(int)– 可选。帖子 ID。默认为全局的 ID$post
。
推荐:[最新版]YITH WooCommerce Social Login社交登录插件
get_post_custom_values()函数
检索自定义帖子字段的值。这些参数不能被视为可选的。将检索所有帖子元字段,并且仅返回元字段键值(源文件可参考这里)
function get_post_custom_values( $key = '', $post_id = 0 ) {
if ( ! $key ) {
return null;
}
$custom = get_post_custom( $post_id );
return isset( $custom[ $key ] ) ? $custom[ $key ] : null;
}
推荐:[最新版]Hero Menu免费下载响应式WordPress Mega Menu超级菜单插件
如何使用get_post_custom_values()
显示当前帖子的自定义字段值,在此示例中,我们假设当前帖子具有三个与自定义字段关联的值my_key。您可以像这样显示它们:
$mykey_values = get_post_custom_values('my_key');
foreach ($mykey_values as $key => $value) {
echo "$key => $value ('my_key')<br />";
}
输出:
0 => First value ('my_key')
1 => Second value ('my_key')
2 => Third value ('my_key')
检索特定帖子的自定义字段值
$post_id = 42; // Replace with desired post ID
$custom_field_key = 'special_key';
$values = get_post_custom_values($custom_field_key, $post_id);
foreach ($values as $value) {
echo "Value: $value<br />";
}
检查帖子是否存在自定义字段
$post_id = 42; // Replace with desired post ID
$custom_field_key = 'special_key';
$values = get_post_custom_values($custom_field_key, $post_id);
if (!empty($values)) {
echo "Custom field '$custom_field_key' exists for post $post_id.";
} else {
echo "Custom field '$custom_field_key' does not exist for post $post_id.";
}
使用标签显示自定义字段值
$custom_field_key = 'featured_text';
$values = get_post_custom_values($custom_field_key);
if (!empty($values)) {
echo "<h3>Featured Text:</h3>";
foreach ($values as $value) {
echo "<p>$value</p>";
}
}
检索多个自定义字段及其值
$post_id = 42; // Replace with desired post ID
$custom_field_keys = array('field_one', 'field_two', 'field_three');
foreach ($custom_field_keys as $field_key) {
$values = get_post_custom_values($field_key, $post_id);
if (!empty($values)) {
echo "<h4>$field_key</h4>";
foreach ($values as $value) {
echo "<p>$value</p>";
}
}
}
如何循环遍历帖子的所有自定义字段值
$post_id = 456; // Replace with the ID of the post
$custom_fields = get_post_custom( $post_id );
foreach ( $custom_fields as $key => $values ) {
foreach ( $values as $value ) {
echo $key . ': ' . $value . '<br>';
}
}
推荐:[最新版]WP Speed of Light Pro插件WordPress速度优化插件
Claude、Netflix、Midjourney、ChatGPT Plus、PS、Disney、Youtube、Office 365、多邻国Plus账号购买,ChatGPT API购买,优惠码XDBK,用户购买的时候输入优惠码可以打95折