使用多维数组在页面上显示自定义字段数据



我有一个自定义字段的选择设置在一个网站的页面上使用,我没有问题,在回声的值到页面上使用get_post_meta。

为了保存多个回调到db,通过实现get_post_meta的多个变体,我决定使用get_post_meta($post->ID),然后拉出存在于其中的数组中的各种自定义字段。

问题在于显示这些数据,我已经包含了我在下面这个过程中使用的代码,但是,而不是使用多个if语句来显示自定义字段值,我想知道是否有人可以向我指出一个更简单的编码方向。

这个解决方案工作完美,关于显示数据,但我想知道你们中的一些忍者如何做得更聪明,也许节省一些代码行!!

很高兴听到你对这个问题的解决方案(尽管我确信这是一个相当直截了当的问题),以提高我对语言的理解!!

<?php $custom = get_post_meta($post->ID);   
    if($custom['wpcf-description'][0]==!null){
      echo "</br>";
      echo "<p>";
      echo $custom['wpcf-description'][0];
      echo "</p>"; }
    if($custom['wpcf-length-overall'][0]==!null){
      echo "<tr>";
      echo "<td>Overall Length: </td>";
      echo "<td>";
      echo $custom['wpcf-length-overall'][0];
      echo " Meters";
      echo "</td>";
      echo "</tr>"; } ?>

我确定你不想在你有空字符串等时返回结果,你可以使用empty()来检查这个

<br>不能用来划分内容,这是一个不好的做法。最好的方法是实现css class/id并以这种方式管理你的布局。

你也可以为数据实现临时变量来整理代码,多2行,但更可读。

<?php 
        $custom = get_post_meta($post->ID);
        $desc = $custom['wpcf-description'][0];
        $total = $custom['wpcf-length-overall'][0];
        if(!empty($desc))
            echo "<p class='newline'>".$desc."</p>";
        if(!empty($total))
            echo "<tr><td>Overall Length: </td><td>".$total." Meters</td></tr>";
?>

相关内容

  • 没有找到相关文章

最新更新