-2

いくつかのカスタムフィールドを表示するために使用される次のコードがあります。

<table>
    <tbody>
<?php 
foreach ($fields as $field) {
$type = $field['s_type'];
$label = $field['s_label'];
$value = Attributes::newInstance()->getValue($item_id, $field['pk_id']);
if ($type == 'checkbox') {
    if ($value == 'checked') $value = 'Yes';
    else $value = 'No';
}
?>

        <tr>
            <td class='detail_label'><?php echo $label; ?></td>
            <td class='detail_label'><?php echo $value; ?></td>
        </tr>
<?php } ?>
    </tbody>
</table>

チェックボックスの値='いいえ'の場合、trにコンテンツを表示する必要はありません

それは可能ですか?

ご協力いただきありがとうございます!

4

2 に答える 2

1

これを試して

 <table>
    <tbody>
<?php 
foreach ($fields as $field) {
   $displayflag=true; //<--here
$type = $field['s_type'];
$label = $field['s_label'];
$value = Attributes::newInstance()->getValue($item_id, $field['pk_id']);
if ($type == 'checkbox') {
    if ($value == 'checked'){ $value = 'Yes'; }
    else{ $value = 'No';$displayflag=false}; //<--here
}
?>
 <?php if($displayflag){?> //<--here

        <tr>
            <td class='detail_label'><?php echo $label; ?></td>
            <td class='detail_label'><?php echo $value; ?></td>
        </tr>
  <?php }?>//<--here
<?php } ?>
    </tbody>
</table>
于 2013-03-27T13:06:42.977 に答える
1

trifステートメントでラップしてみませんか?$value「はい」の場合にのみ値を表示したいのと同じ変数を再利用できます。

<?php
    if ($value == 'Yes')
    {
?>
        <tr>
            <td class='detail_label'><?php echo $label; ?></td>
            <td class='detail_label'><?php echo $value; ?></td>
        </tr>
<?php
    }
?>
于 2013-03-27T13:18:36.977 に答える