2016-09-11 4 views
0

私はここで何か基本的な誤りがあると確信しています。フィールドに内容がある場合、ワードプレスの2番目の段落の後に引用ブロックを挿入しようとしています。そうでない場合は、ブロックなしでコンテンツを追加します。コードはif else文の外で動作しますが、その中にはありません。私は高度なカスタムフィールドプラグインを使ってフィールドを作成しました。誰も助けることができますか?ここに私のコードは次のとおりです。php 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(); ?> 
} 
?> 

答えて

1

これはおそらく、あなたの問題です:

$contentblock = the_field(post_quote_block); 

あなたはおそらくしたい定数post_quote_blockを定義している場合を除き:後で同じ問題を抱えている

​​

注意あなたはhtmlを出力します。

+0

こんにちは。お返事をありがとうございます。残念ながらそれは動作していません(ただし、私はここで何か他のものが欠けている可能性がありますが)。それぞれの 'post_quote_block'に引用符を追加すると、自分の投稿にアクセスしたときに空白のページが表示されます。 –

0

次のコードで2行のコードを置き換えて、値が設定されているかどうかを確認します。

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