the_meta() 产生空输出
我想在我的自定义模板中打印帖子的元信息。但是函数 the_meta()
和 get_post_meta($id, $key, $single)
都没有打印出任何内容。我已经仔细检查了我的帖子是否有帖子元数据,我已经在数据库表中检查了这一点。
模板:
<?php the_meta(); ?>
输出:
<ul class='post-meta'> </ul>
有什么解决问题的想法吗?
I want to print out the meta infos of a post in my custom template. But both the functions the_meta()
and get_post_meta($id, $key, $single)
print out nothing. I have double checked that my post has post meta data, I have checked that in the DBs table.
Template:
<?php the_meta(); ?>
Output:
<ul class='post-meta'> </ul>
Any ideas how to troubleshoot?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你做的一切都是正确的,但你需要记住,在 php 中,当你使用 get_post_meta($args) 时,你必须使用
echo
函数...所以,在你的模板中你会做类似的事情:
其中
thumb
是您要显示的元键的值...这有帮助吗?
You are doing everything right but you need to remember that in php you have to use the
echo
function when you use get_post_meta($args)...So, in your template you would be doing something like:
Where
thumb
would be the value of the meta key you want to display...Does that help?
还有其他问题:我将自定义字段命名为
_fieldname
。这使得它们隐藏并且无法在模板中访问。您必须编写一个“getter 标记”才能访问它们。因此,我要么必须删除下划线,要么必须编写一个像
the_custom_field_foobar()
这样的函数来使用它们。Something else was the problem: I named my custom fields
_fieldname
. That makes them hidden and unable to be accessed in the template. You have to write a "getter tag" to access them.So I either have to remove the underscore or I have to write a function like
the_custom_field_foobar()
to use them.