1

无法弄清楚我在这里做错了什么这是模板文件的顶部

<?php
/**
 * @package 1
 * @since 1 1.0
 */

$source_name = get_post_meta($post->ID, 'Source Name', true);
$source_url = get_post_meta($post->ID, 'Source URL', true);
?>

下面是另一部分:

<?php if($source_url) { ?>
<div id="content-source">
    <span>Source:</span> <a href="<?php echo $source_url; ?>"> <?php echo $source_name; ?></a>
</div>
<?php } ?>

如果我删除它<?php if($source_url) { ?>并且<?php } ?>它工作正常,但是我如何让它工作,所以如果没有源,什么都不会显示?

4

1 回答 1

2

快速查看get_post_meta()函数:

如果没有要返回的内容,该函数将返回一个空数组,除非 $single 已设置为 true,在这种情况下返回一个空字符串。

所以,试试:

    <?php if($source_url <> "") { ?>
    <div id="content-source">
        <span>Source:</span> <a href="<?php echo $source_url; ?>"> <?php echo $source_name; ?></a>
    </div>
    <?php } ?>

以前您正在检查是否没有返回任何内容。您需要改为检查空字符串。

于 2012-12-16T01:44:32.070 回答