Specific coditional usage

时间:2012-10-03 作者:Locke

我在将功设置为函数中的条件函数时遇到了一些问题。

查看以下内容:

我正在使用此功能:

function get_spec_1(){
  $desc1 = get_post_meta( get_the_ID(), \'eco_mb_tp_1\', true!= ""  );

  if(!empty ($desc1)){
    foreach ( $desc1 as $d1 ){
      $code = "
      <dl>
      <dt class=\'bullet6-top\'>General</dt>
      <dd>
      <ul>
      <li>$d1</li>
      </ul>
      </dd>
      </dl>
      ";
      echo $code;
    }

  }
}
但此函数会导致:

<dl>
    <dt class=\'bullet6-top\'>Generales</dt>
    <dd>
    <ul>
    <li>$metabox_cloned_value_1</li>
    </ul>
    </dd>
</dl>

<dl>
    <dt class=\'bullet6-top\'>Generales</dt>
    <dd>
    <ul>
    <li>$metabox_cloned_value_2</li>
    </ul>
    </dd>
</dl>
但我想实现的是:

<dl>
    <dt class=\'bullet6-top\'>Generales</dt>
    <dd>
    <ul>
<li>$metabox_cloned_value_1</li>
<li>$metabox_cloned_value_2</li>
    </ul>
    </dd>
</dl>
如果没有现有数据。

然后整个<dl> 不会显示。

如何获得此结果?

谢谢

1 个回复
SO网友:Eric Holmes

给你。因为DL、DT、DD和UL都在foreach循环中,所以要复制它们。以下是正确的代码:

function get_spec_1(){
  $desc1 = get_post_meta( get_the_ID(), \'eco_mb_tp_1\', true );

  if( !empty( $desc1 ) ){
    // Open the stuff
    $code = "
      <dl>
      <dt class=\'bullet6-top\'>General</dt>
      <dd>
      <ul>";
    // Loop through the items once inside the ul
    foreach ( $desc1 as $d1 ){
      code .="<li>$d1</li>";
    }
    // Close the stuff
    code.="
      </ul>
      </dd>
      </dl>
      ";
    echo $code;
  }
}

结束

相关推荐

创建行为类似Taxonomy Box的Metabox

我需要在存档页上显示所有自定义文章,但按主题分组/排序。所以结果有点像主题A:一篇示例文章另一篇示例文章主题B:关于培根的帖子等等我在这里读了一些相关的帖子17155 和14306 并得出结论,这种类型的分组必须用后元完成。但是,带有文本输入的简单元框不如类别元框的复选框友好。。。。也没有标签框及其(从最常用的标签选项中选择)。因此,我正在寻求建议,什么是最好的方式,以获得最好的两个世界?我只想对1个主题进行选择,但我希望能够看到其他主题已经被使用了。我是否可以替换类别元框,使其使用单选按钮而不是复选框,