在WordPress函数中获取标题而不是ID

3

我在WordPress网站中有这个函数:

    function cf7_get_custom_field($atts){
        extract(shortcode_atts(array(
            'key' => '',
            'post_id' => -1,
            'obfuscate' => 'off'
        ), $atts));

        if($post_id < 0){
            global $post;
            if(isset($post)) $post_id = $post->ID;
        }

        if($post_id < 0 || empty($key)) return '';

        $val = get_post_meta($post_id, $key, true);

        if($obfuscate == 'on'){
    $val = cf7dtx_obfuscate($val);
        }

        return $val;`
$val 返回的是文章ID号码,但我想要得到文章标题

这一行: $val = get_post_meta($post_id, $key, true); 应该在其中某个地方加入get_post_title或get_title。

有什么建议吗?


你想通过文章标题获取文章元数据而不是文章ID吗? - Kausha Mehta
1个回答

1
你可以使用get_the_title,它根据文章ID返回文章的标题。
$val = get_post_meta($post_id, $key, true);
$post_title = get_the_title( $val );

return $post_title;

但是我想要做的是从 $key 中获取值,其中 $key 是帖子内自定义字段的 ID(一个基于另一个自定义帖子类型的名称下拉框)。 - user2849533
由于$val是$post_id,为什么不在get_the_title中使用它作为参数?代码已更新。 - m4n0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接