我确定我在这里做了一些基本的错误。如果字段中有内容,请尝试在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(); ?>
}
?>
答案 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)) {