如何在wordpress的帖子页面上有自定义字段?

时间:2010-05-07 20:48:05

标签: wordpress field

首先,我创建了一个home.php页面来替换index.php,并且可以在这个新的字段上添加一些自定义字段,并在其中包含最新的3个帖子。

在home.php页面上,我把:

<?php echo get_post_meta($post->ID, 'test', true); ?>"/>

但它不起作用,因为它尝试获取post id而不是页面的id。如果我直接放18(页面的ID)它可以工作,但我想它dinamicaly:

 <?php echo get_post_meta(18, 'test', true); ?>"/>

这个条件满足测试:

if($post->post_type == 'page'){
    echo 'This item is a page and the ID is: '.$post->ID;
}

2 个答案:

答案 0 :(得分:1)

Heyo,

我认为你的问题可能是你应该在一个循环内。 例如,如果您显示某个类别中的多个帖子并显示每个自定义字段,则可能如下所示:

 <?php query_posts('cat=25&showposts=3'); ?>
    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
        <li class="homeblock" style="max-width:400px;">
        <span class="artist-name">  
    <?php $key='artist'; echo get_post_meta($post->ID, $key, true); ?> 
</span>
    <div class="entry-thumbnail">
    <?php the_post_thumbnail(); ?> 
    </div>

    </li>
    <?php endwhile; endif; ?>

否则(不确定您的主题是如何设置的),您可能需要做的是编辑content.php并添加:

<?php $key='artist'; echo get_post_meta($post->ID, $key, true); ?> 

答案 1 :(得分:0)

尝试:

if ($post->post_type == 'page') {
    <?php echo get_post_meta($page_id, 'test', true); ?>
}

希望这会有所帮助:)