php if else语句 - 测试空字段

时间:2016-09-11 12:33:19

标签: php wordpress

我确定我在这里做了一些基本的错误。如果字段中有内容,请尝试在WordPress帖子的第二段后插入引用块。如果没有,我想添加没有块的内容。代码在if else语句之外工作,但不在其中。我使用了高级自定义字段插件来创建字段。有人可以帮忙吗?这是我的代码:

<?php
$show_after_p = 2;
$content = apply_filters('the_content', $post->post_content);
$contentblock = the_field(post_quote_block);
if (!empty($contentblock)) {
if(substr_count($content, '<p>') > $show_after_p)
{
    $contents = explode("</p>", $content);
    $p_count = 1;
    foreach($contents as $content)
    {
        echo $content;
        if($p_count == $show_after_p)
        {
        ?>
                <div class="blogQuoteBlock"><div class="blogQuoteBlockText"><?php the_field(post_quote_block) ?></div></div>
        <?php
        }
        echo "</p>";
        $p_count++;
    }
}
}
else {
    <?php the_content(); ?>
}
?>

2 个答案:

答案 0 :(得分:1)

这可能是你的问题:

$contentblock = the_field(post_quote_block);

除非您定义了一个常数post_quote_block,否则您可能需要:

$contentblock = the_field('post_quote_block');

请注意,稍后输出html时会出现同样的问题。

答案 1 :(得分:0)

通过以下代码替换您的2行代码,以检查是否设置了值。

$contentblock = the_field('post_quote_block');
if (isset($contentblock) && !empty($contentblock)) {