0

我有以下代码:

<?php $buycheck = get_post_meta($post->ID, 'buy-link', true); ?>

            <?php if ( $buycheck ) : ?>
                <div class="section-title sidebar span5">
                    <h5>Get This Release</h5>
                </div>

            <?php else : ?>

                <div class="section-title sidebar span5">
                    <h5>More Releases</h5>
                </div>

            <?php endif; ?>

稍后在我的代码中,我希望能够说如果购买链接不存在 - 即该字段中没有数据 - 然后做一些事情,否则做一些不同的事情。

不知道该怎么做!帮助表示赞赏!

(顺便说一句,我首先将这个问题发布到 Wordpress Stack Exchange。它在那里被投票关闭,因为它显然比 Wordpress 更关注 PHP 布尔逻辑 - https://wordpress.stackexchange.com/questions/60387/how-do-i -do-if-post-meta-does-not-exist#comment78412_60387

4

2 回答 2

1

您可以设置一个全局变量,您可以稍后检查以查看购买链接是否存在:

<?php

$buycheck = get_post_meta($post->ID, 'buy-link', true);
$GLOBALS['buy_link_exists'] = !empty($buycheck);

?>

<?php if ( $buycheck ) : ?>
<div class="section-title sidebar span5">
    <h5>Get This Release</h5>
</div>

<?php else : ?>

<div class="section-title sidebar span5">
    <h5>More Releases</h5>
</div>

<?php endif; ?>

然后稍后在您的代码中:

<?php if ($GLOBALS['buy_link_exists'])): ?>
    it exists, do one thing
<?php else: ?>
    it does not exist, do something else
<?php endif; ?>

如果您需要实际值,您可以设置一个包含返回值的全局变量,get_post_meta以便您可以使用实际值。

于 2012-07-31T22:25:13.803 回答
1
<?php if($buycheck ==''){ /*stuff*/ } ?>

这将呈现 $buycheck,如果它是空的==等于''什么都没有。

于 2012-07-31T22:28:09.420 回答