Всем привет! Хочу вывести по id определенных производителей в шапку сайта (Ocstore 2.3.0.2) Вставил вот такой код в header.php Код: $data['brands'] = $this->config->get('brands'); $this->load->model('catalog/manufacturer'); $data['manufacturers'] = array(); foreach ($this->model_catalog_manufacturer->getManufacturers() as $result) { $data['manufacturers'][] = array( 'name' => $result['name'], 'id' => $result['manufacturer_id'], 'href' => $this->url->link('product/manufacturer/info', 'manufacturer_id=' . $result['manufacturer_id']) ); } где brands это поле, которое я заполняю из админки (допустим 3,4,5) а это в header.tpl Код: <?php $array = array($brands); ?> <?php foreach ($manufacturers as $manufacturer) { ?> <?php if (in_array($manufacturer['id'], $array)) { ?> <div class="col-sm-2"><a href="<?php echo $manufacturer['href']; ?>"><?php echo $manufacturer['name']; ?></a></div> <?php } ?> <?php } ?> в результате ничего не отображается, причем если в шаблоне id прописать в ручную, то все выводится как надо Код: <?php $array = array(3,4,5); ?> <?php foreach ($manufacturers as $manufacturer) { ?> <?php if (in_array($manufacturer['id'], $array)) { ?> <div class="col-sm-2"><a href="<?php echo $manufacturer['href']; ?>"><?php echo $manufacturer['name']; ?></a></div> <?php } ?> <?php } ?> подскажите как можно решить проблему, возможно ли вообще эту выборку проводить не в шаблоне, а прямо в самом контроллере? Спасибо.
Если в конфиг вы заносите строкой, то при $array = array($brands); вы получите например Array ( [0] => 3,4,5 ) а нужно же Array ( [0] => 3 [1] => 4 [2] => 5 ) Для этого нужно $array = explode(',',$brands); Или в конфиг заносить применив serialize($input_data), а при получении из конфига - unserialize() $input_data должен быть массивом