在Wp-admin中的Post Page中获取帖子ID

时间:2014-02-13 13:25:09

标签: php wordpress wordpress-plugin

我想在Post页面中获取帖子ID。我需要这个自定义元框,所以我可以在短代码中设置id。我可以在通知中显示结果,但不知道如何使其全局用于元输入。我到现在所知道的是:

function foo(){
global $post;
$nid = $post->ID;
var_dump($nid);
}
add_action( 'admin_notices', 'foo' );

显示id但我需要它作为变量,所以我可以在以后使用它。所以我试图让$nid全局然后回应它,但它没有显示任何内容。

1 个答案:

答案 0 :(得分:0)

WordPress已定义global $post,并且在相关时完全可用。但是在创建元框时你不需要这个,因为默认情况下对象$post作为参数传递:

add_action( 'add_meta_boxes', 'add_box_so_21755578' );

function add_box_so_21755578() {
    add_meta_box( 
        'box_so_21755578',
        'Post ID',
        'print_box_so_21755578',
        'post',
        'side',
        'high'
    );
}

function print_box_so_21755578( $post )
{
    echo "This post ID is $post->ID";
}

enter image description here