将php生成的内容包装在div包装中

时间:2019-09-26 18:12:34

标签: php wordpress wrapper advanced-custom-fields

我正在使用Wordpress的“高级自定义字段”中的php代码段(如下)。而不是将div静态地放置在php周围,我希望php仅在有php生成内容的情况下才生成div。我将如何完成?

谢谢!

此处是“高级自定义字段”的链接 https://www.advancedcustomfields.com/resources/oembed/

<div class="embed-container">
    <?php the_field('oembed'); ?>
</div>

3 个答案:

答案 0 :(得分:1)

您应该能够使用推荐的语法检查该字段是否具有值并显示它。

<?php 

// Check if the field has a value

if ( get_field('oembed') ): ?>

<div class="embed-container">
    <?php the_field('oembed'); ?>
</div>

<?php endif; ?>

如果要扩展它以检查并显示多个字段,请在这里some further info from ACF

答案 1 :(得分:0)

这将是一个简单的方法:

<?php
$output = trim(the_field('oembed'));
if (!empty($output)) {
  echo "<div class=\"embed-container\">
    $output
  </div>\n";
}
?>

答案 2 :(得分:0)

第一行检查该字段是否存在并且不为null,如果存在,则删除空格。然后,第三行根据第2行中的格式检查被修剪的字段是否不为空,如果没有,则在其周围添加标签:

<?php

   $field = isset(the_field("oembed")) ? trim(the_field('oembed')) : "";
   $format = "<div>%s</div>";
   echo !empty($field) ? sprintf($format, $field) : ""; 

?>