从创建帖子/页面管理界面获取帖子ID?

时间:2011-01-29 作者:Joann

我正在创建帖子/页面界面中添加一个元框,我想获取正在编辑/创建的帖子的ID,以便动态显示输入字段的值。

WordPress codex :

/* Prints the box content */
function myplugin_inner_custom_box() {

  // Use nonce for verification
  wp_nonce_field( plugin_basename(__FILE__), \'myplugin_noncename\' );

  // The actual fields for data entry
  echo \'<label for="myplugin_new_field">\' . __("Description for this field", \'myplugin_textdomain\' ) . \'</label> \';
  echo \'<input type="text" id= "myplugin_new_field" name="myplugin_new_field" value="whatever" size="25" />\';
}
如何将ID传递给myplugin_inner_custom_box()? 因此,我可以在其中使用以下内容:

// Get the value of the meta key that is associated to the page
  $as_meta_value = get_post_meta( $post_id, \'as_link_to_image\', true );
并更换whatever 输入字段中元键的值。

2 个回复
最合适的回答,由SO网友:Rarst 整理而成

Try get_the_ID() or global $post; $post->ID.

SO网友:MikeSchinkel

你好@Joann:

创建后期管理元数据库时,the standard way to get the Post\'s ID in a metabox is via a $post parameter in the callback function. 以下是代码的子集from the Codex 找到了与您发布的相同的页面,但在我将其更新以删除2个错误后:

希望这是自嘲?

add_action(\'add_meta_boxes\', \'myplugin_add_custom_box\');
function add_my_meta_box() {
  add_meta_box(\'metabox_id\', \'Metabox Title\', \'my_metabox_callback\', 
      \'page\', \'normal\', \'low\');
}
function my_metabox_callback($post, $metabox) {
  echo get_post_meta($post->ID,\'my_custom_field\',true); 
}

结束

相关推荐