GET_POST_CUSTOM_VALUES问题,请帮助

时间:2011-09-09 作者:user7331

我想从归档页列表中获取“问题封面”,我做到了。但当我在archice页面上更新/添加新帖子时,它无法获得元值。

<div class="monthly_archive">
    <?php $values = get_post_custom_values("issue-cover"); 
          if (isset($values[0])) { 
      ?>
    <a target="_blank" href="<?php $values = get_post_custom_values("issue-cover"); echo $values[0]; ?>" class="top-box-images"><img src="<?php $values = get_post_custom_values("issue-cover"); echo $values[0]; ?>" title="<?php echo get_post_meta($post->ID, \'issue\', true); ?>"/></a>
    <?php }
        // if there\'s no img do replace it with no-img
     else { ?>
    <img src="<?php bloginfo(\'stylesheet_directory\'); ?>/images/no-img.gif" title="<?php echo get_post_meta($post->ID, \'issue\', true); ?>"/>
     <?php } ?>

    <span class="issue"><?php echo get_post_meta($post->ID, \'issue\', true); ?></span>
    <span class="cover-by"><?php echo get_post_meta($post->ID, \'cover-by\', true); ?></span>
    </div>

2 个回复
SO网友:Brian Fegter

只是想知道为什么要使用$values=get\\u post\\u custom\\u values(“发行封面”);很多次了。第二个参数缺少post->ID参数。您只需定义此变量一次,然后反复使用它。

我还想知道为什么你不使用post缩略图来解决这个问题。Wordpress中有两个方便的函数,如下所示:

您的代码如下所示:

<?php
global $post;
$values = get_post_custom_values("issue-cover", $post->ID);
$title = get_post_meta($post->ID, \'issue\', true);
$designer = get_post_meta($post->ID, \'cover-by\', true);
if(has_post_thumbnail()):
    echo "<a target=\'_blank href=\'{$values[0]}\'>";
    the_post_thumbnail(array(HEIGHT,WIDTH), array(\'title\'=>$title));
    echo "</a>";
else:
    echo "<img src=\'".get_bloginfo(\'stylesheet_directory\')."/images/no-img.gif\' title=\'$title\' alt=\'$title\' />";
endif;?>
要处理未显示的post meta,您需要确保您正在循环中操作。

SO网友:tollmanz

尝试将post id发送到函数:

$values = get_post_custom_values("issue-cover", $post->ID);

结束

相关推荐