Недавно я впервые установил Opencart 1.5.6. Все в порядке, за исключением того, что я пытаюсь показать изображения вместе с текстом в подкатегориях (где находится текст Refine Search). До сих пор я помещал это в catalog\controller\module\category.php
$children_data[] = array( 'category_id' => $child['category_id'], 'name' => $child['name'] . ($this->config->get('config_product_count') ? ' (' . $product_total . ')' : ''), 'image' => $category['image'], 'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id']) ); } $this->data['categories'][] = array( 'category_id' => $category['category_id'], 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $total . ')' : ''), 'image' => $category['image'], 'children' => $children_data, 'href' => $this->url->link('product/category', 'path=' . $category['category_id']) );
Новая вещь – это 'image' => $category['image'],
. Я также немного изменю catalog\view\theme\MYTHEME\template\product\category.tpl
следующим образом:
<ul> <?php foreach ($categories as $category) { ?> <li> <img src="../../../../../../image/data/models/<?php echo $category['image']; ?>" width="100"/> <a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a> </li> <?php } ?> </ul> <ul> <?php $j = $i + ceil(count($categories) / 4); ?> <?php for (; $i < $j; $i++) { ?> <?php if (isset($categories[$i])) { ?> <li> <img src="../../../../../../image/data/models/<?php echo $categories['image']; ?>" width="100"/> <a href="<?php echo $categories[$i]['href']; ?>"><?php echo $categories[$i]['name']; ?></a></li> <?php } ?> <?php } ?> </ul>
Результатом является поле со сломанным изображением и текстом под изображением.
Я вижу из-за ошибки, что это такое, но не может понять, как его восстановить. <img src="../../../../../../image/data/models/<b>Notice</b>: Undefined index: image in <b>..\catalog\view\theme\mytheme\template\product\category.tpl</b> on line <b>29</b>" width="100"/>
Попробуйте что-то вроде кода OpenCart по умолчанию.
Открыть catalog/view/theme/<your theme>/template/template/category.tpl
файлов catalog/view/theme/<your theme>/template/template/category.tpl
Найти : уточнить код категории.
Добавить после <div class="category-list">
начать div
<?php $counter = 0; foreach ($categories as $category) {?> <div> <?php if ($category['thumb']) { ?> <a href="<?php echo $category['href']; ?>"><img src="<?php echo $category['thumb']; ?>" alt="<?php echo $category['name']; ?>" /></a> <?php } else { ?> <a href="<?php echo $category['href']; ?>"><img src="image/no_image.jpg" alt="<?php echo $category['name']; ?>" /></a> <?php } ?> <a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a> </div> <?php $counter++; } ?>
Открыть catalog/controller/product/category.php
файлов catalog/controller/product/category.php
Найти :
$product_total = $this->model_catalog_product->getTotalProducts($data);
Добавить после
$image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_category_width'), $this->config->get('config_image_category_height'));
В том же catalog/controller/product/category.php
файлов catalog/controller/product/category.php
Найти :
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $result['category_id'] . $url)
Заменить (вместо строки выше)
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $result['category_id'] . $url), 'thumb' => $image
а затем проверить его.