Trying to retrieve post meta

时间:2013-04-21 作者:user1632018

我创建了一个元框,允许用户在帖子中添加其他名称/id。据我所知,它正确地添加了元信息,因为当我编辑一篇具有自定义名称/ID的文章时,它会在默认情况下显示在输入框中。

因此,我的问题是,我试图提取自定义ID/名称,并将其用作代码中的附加ID标记。虽然它没有检索任何内容。当我在主题中使用代码并检查页面上的html时,ID显示ID=“”。因此,出于某种原因,它并没有拉动任何东西。有人能看到问题吗?

<?php $post_id = get_the_ID(); ?>
    <?php $value = get_post_meta($post_id, \'newtheme_section_id\'); ?>
    <id="<?php $value; ?>">
如果我将get\\u the\\u ID()更改为\\u ID(),那么它将返回一个值,但它是post ID,而不是用户在字段中输入的自定义ID。

编辑:我可以通过回显函数而不是将其存储在变量中,再加上Manny的建议来找出答案。这是更新后的代码。

<?php $post_id = get_the_ID(); ?>
<id="<?php echo esc_attr( get_post_meta($post_id, \'newtheme_section_id\', true) ); ?>">

1 个回复
最合适的回答,由SO网友:Manny Fleurmond 整理而成

确保将第三个参数包含到get_post_meta, 一个布尔值,用于确定它是否返回单个项或项数组。默认值为false,这是一个数组,因此将其设置为true:

  <?php $value = get_post_meta ($post_id, \'newtheme_section_id\', true ); ?>

结束