2014-10-30 83 views
0

我有一个WordPress主题与一个简要的总结,与CSS的样式,在一个职位的顶部。这包裹在一个if语句中,只有在有摘要时才显示。HTML标记不显示从内部的PHP如果语句

使用下面的代码显示摘要文本,但周围的HTML标记不包含在页面源代码中。

<?php if (get_smry_text($post)) { ?> 
<div class="summaryWrap"> 
    <div class="sumText"> 
     <p><?php get_smry_text($post); ?></p> 
    </div> 
</div> 
<?php } ?> 

任何人都可以提供一个建议,为什么这可能是?

回答

1

有可能get_smry_text()不返回任何值。
相反,它直接回应内容。 如果您正在使用this function你可以做这样的事情:

<?php if ($smry = get_post_meta($post->ID, 'smry_text', true)) { ?> 
<div class="summaryWrap"> 
    <div class="sumText"> 
     <p><? echo $smry; ?></p> 
    </div> 
</div> 
<?php } ?> 
+0

完美......和荣誉的功课!如果我现在了解它,if语句中的代码会完全跳过,而if条件本身会回显文本? – tonyedwardspz 2014-10-30 21:32:43

0

尝试这样做:

<?php 
    $smry_text = get_smry_text($post); 
    if ($smry_text) { 
     $text = '<div class="summaryWrap"> 
       <div class="sumText"> 
       <p> ' . $smry_text . '</p> 
       </div> 
      </div>'; 
     echo $text; 
    } 
?> 
+0

这又做了什么?不幸的是,它现在甚至不会编译。 – Jonast92 2014-10-30 21:29:35

+0

它编译 – 2014-10-30 21:31:31

+0

使用该摘要文本不会显示在所有:( – tonyedwardspz 2014-10-30 21:37:58