Opencart проблема с выводом категорий для товара
Opencart Версия 2.3.0.2.1 Нужно на странице с товарами, в каждом блоке товара, вывести все категории к которым прикреплен данный товар. У меня получается вывести либо одну категорию, либо все и сразу. В карточке товара все работает отлично... Код с контроллера карточки товара:
$product_info = $this->model_catalog_product->getProduct($product_id);
$categories = $this->model_catalog_product->getCategories($product_id);
if ($categories) {
foreach ($categories as $category) {
$categories_info = $this->model_catalog_category->getCategory($category['category_id']);
$data['category_name'][] = array(
'name' => $categories_info['name']
);
}
} else {
$data['category_name'] = '';
}
Код с контроллера категорий товара(выводит только одну категорию):
if ($categories) {
$categories_info = $this->model_catalog_category->getCategory($categories[0]['category_id']);
$category_name = $categories_info['name'];
} else {
$category_name = '';
}
$data['products'][] = array(
'product_id' => $result['product_id'],
'thumb' => $image,
'name' => $result['name'],
'sku' => $result['sku'],
'price' => $price,
'category_name' => $category_name,
'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get($this->config->get('config_theme') . '_product_description_length')) . '..',
'shot_description' => strip_tags(html_entity_decode($result['shot_description'], ENT_QUOTES, 'UTF-8')),
'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1,
'rating' => $result['rating'],
'href' => $this->url->link('product/product', 'product_id=' . $result['product_id'] . $url)
);