显示不起作用的自定义字段的值

时间:2012-11-12 作者:cindyg

我只是想打印自定义字段的值。我已经阅读了所有的文档,尝试了其他人的建议,但没有任何效果。我可以让它打印ID#,但不能打印字段中的实际值。我正在使用类型插件创建字段。

这将打印ID:

<?php echo get_the_ID($value, \'authorinfo\', true); ?>
以及:

<?php echo get_the_ID($key, \'authorinfo\', true); ?>
这不起任何作用:

<?php get_post_meta( $post->ID, \'authorinfo\', true ); ?>
这不起任何作用:

<?php echo get_post_meta(get_the_ID(), \'authorinfo\', true); ?>
(我在这个网站上有一个单独的问题,其中出现了问题并提供了解决方案,但不幸的是,它对我不起作用)-Display custom post type and custom fields within a Bootstrap Carousel

以下是我正在使用的所有代码,以防有所帮助。我希望我在做些蠢事。

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

    <div id="myCarousel" class="carousel">
        <div class="carousel-inner">

          <?php $the_query = new WP_Query(array(
            \'post_type\' => \'testimonial\', 
            \'posts_per_page\' => 1 
            ));
            while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
            <div class="item active" data-title="">
                <div class="slide-copy">
                    <?php the_content();?>
                    <span class="byline"><?php echo get_post_meta(get_the_ID(), \'authorinfo\', true); ?></span>
                </div>
            </div>
            <?php endwhile; wp_reset_postdata(); ?>
            <?php $the_query = new WP_Query(array(
            \'post_type\' => \'testimonial\', 
            \'posts_per_page\' => 5, 
            \'offset\' => 1 
            ));
            while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
            <div class="item" data-title="">
                <div class="slide-copy">
                    <?php the_content();?>
                    <span class="byline"><?php echo get_post_meta(get_the_ID(), \'authorinfo\', true); ?></span>
                </div>
            </div>

            <?php endwhile; wp_reset_postdata(); ?>
          </div>
        </div>
      </div><!-- end myCarousel -->

<?php endwhile; ?>      

EDIT/ADDITION

由于使用类型插件的次数更多,我非常确信通过使用“Types\\u render\\u field”而不是“get\\u post\\u meta”可以解决这个问题。我没有一个地方可以测试这个,但我认为这应该可以帮助有类似问题的人。

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

Types插件使这项工作变得比需要的困难了10倍左右,你必须查看他们关于这个问题的文档,但从我可以看出,他们没有将项目存储在postmeta 以简单的方式创建表。我在沙盒env和meta_key 对于我命名的字段datawpcf-data. 您可能希望获取您的帖子ID并在DB中执行此操作:

SELECT * FROM wp_postmeta WHERE post_id = NNNN;
在哪里NNNN 是您的帖子ID。您可能会看到wpcf-authorinfo 钥匙,那很可能是你应该传递给的钥匙get_post_meta:

echo get_post_meta(get_the_ID(), \'wpcf-authorinfo\', TRUE);

SO网友:Rachel Baker

我会尝试:

echo get_post_meta( $the_query->post->ID, \'authorinfo\', true);
虽然我同意阿加瓦尔先生的观点

<?php echo get_post_meta(get_the_ID(), \'authorinfo\', true); ?>
也应该有效。

SO网友:gtamborero

比那容易!只需执行以下操作:

echo types_render_field("description");
其中,“description”是自定义字段的名称。这将打印您的帖子/帖子类型的“description”值。

以下是Wordpress类型插件的文档:http://wp-types.com/documentation/user-guides/displaying-wordpress-custom-fields/#1

这只适用于“类型插件”。如果您使用的是“高级自定义字段插件”,则应使用:

echo get_field(\'description\');

结束

相关推荐