如何从自定义创建的元框返回值?

时间:2010-04-28 07:04:51

标签: php wordpress

我刚从Wordpress跟随this example,我已经在Post界面中成功添加了一个额外的Meta Box,并且该值存储在DB中。

现在我的问题是,如何检索和显示此元框的内容?

我正在尝试以下代码:

  $intro = get_post_meta($post->ID, 'post_intro', true);
  echo $intro;

但是我得到了nada。我做错了什么?

虽然我在这里,是否有人知道我是否可以将这个额外的元框放在Wordpress帖子页面的默认文本框上方?

2 个答案:

答案 0 :(得分:4)

是循环中的代码片段吗?如果是,请使用get_the_ID()代替$post->ID

它看起来应该是这样的:

$intro = get_post_meta(get_the_ID(), 'post_intro', true);
echo $intro;

如果您需要在循环外获取元数据,请执行以下操作:

global $post;
$intro = get_post_meta($post->ID, 'post_intro', true);
echo $intro;

您没有得到任何结果的原因是因为如果要访问它,必须全局化$ post变量。除非您别无选择,否则请始终使用第一种方法。如果您尝试将元数据用于页面模板,请说明,因为在这种情况下我有更好的处理元数据的解决方案。

祝你好运!

答案 1 :(得分:0)

作为旁注,我想引用WordPress Meta Box PHP Helper class,这可能会帮助您和其他人使用WordPress Meta Box。