JEA设施布局添加自定义css样式


JEA amenities layout add custom css style

我在看代码,但不知道如何将自定义CSS类添加到ul标记中?

  <?php if (!empty($this->row->amenities)): ?>
  <h3><?php echo JText::_('COM_JEA_AMENITIES')?> :</h3>
  <?php echo JHtml::_('amenities.bindList', $this->row->amenities, 'ul') ?>
  <?php endif ?>

生成:

<h3>Amenities</h3>
<ul>
 <li></li>
 <li></li>
 <li></li>
 etc.
</ul>

我需要:

<h3>Amenities</h3>
<ul class="check">
 <li></li>
 <li></li>
 <li></li>
 etc.
</ul>

我确信,它应该是一些简单的东西。

函数的来源是-

static public function bindList($value=0, $format='raw')
{
    if (is_string($value) && !empty($value)) {
        $ids = explode('-' , $value);
    } elseif (empty($value)) {
        $ids = array();
    } else {
        JArrayHelper::toInteger($value);
        $ids = $value;
    }
    $html = '';
    $amenities = self::getAmenities();
    $items = array();
    foreach ($amenities as $row) {
        if (in_array($row->id, $ids)) {
            if ($format == 'ul'){
                $items[] = "<li>{$row->value}</li>'n";
            } else {
                $items[] = $row->value;
            }
        }
    }
    if ($format == 'ul'){
        $html = "<ul>'n" . implode("'n", $items) . "</ul>'n";
    } else {
        $html = implode(', ', $items);
    }
    return $html;
}

根据函数的来源,我可以看到的方式是将'<ul>'替换为'<ul class="check">'

<?php 
$html = JHtml::_('amenities.bindList', $this->row->amenities, 'ul');
echo str_replace('<ul>','<ul class="check">',$html);    
?>

或者,您可以调用getAmenities函数并循环结果,然后创建自己的ul和li。

希望这能有所帮助。