Нужно было вывести картинки категорий в самом горизонтальном меню (blocktopmenu) Престашоп.
За вывод изображений категорий в меню отвечает функция generateCategoriesMenu которая находиться в файле blocktopmenu.php
Открываем этот файл который находиться в модулях и редактируем его
public_html/modules/blocktopmenu/blocktopmenu.php
ищем функцию generateCategoriesMenu и комментируем её для сохранности оригинала
// protected function generateCategoriesMenu($categories, $is_children = 0)
// {
// $html = '';
// foreach ($categories as $key => $category) {
// if ($category['level_depth'] > 1) {
// $cat = new Category($category['id_category']);
// $link = Tools::HtmlEntitiesUTF8($cat->getLink());
// } else {
// $link = $this->context->link->getPageLink('index');
// }
// /* Whenever a category is not active we shouldnt display it to customer */
// if ((bool)$category['active'] === false) {
// continue;
// }
// $html .= '<li'.(($this->page_name == 'category'
// && (int)Tools::getValue('id_category') == (int)$category['id_category']) ? ' class="sfHoverForce"' : '').'>';
// $html .= '<a href="'.$link.'" title="'.$category['name'].'">'.$category['name'].'</a>';
// if (isset($category['children']) && !empty($category['children'])) {
// $html .= '<ul>';
// $html .= $this->generateCategoriesMenu($category['children'], 1);
// if ((int)$category['level_depth'] > 1 && !$is_children) {
// $files = scandir(_PS_CAT_IMG_DIR_);
// if (count(preg_grep('/^'.$category['id_category'].'-([0-9])?_thumb.jpg/i', $files)) > 0) {
// $html .= '<li class="category-thumbnail">';
// foreach ($files as $file) {
// if (preg_match('/^'.$category['id_category'].'-([0-9])?_thumb.jpg/i', $file) === 1) {
// $html .= '<div><img src="'.$this->context->link->getMediaLink(_THEME_CAT_DIR_.$file)
// .'" alt="'.Tools::SafeOutput($category['name']).'" title="'
// .Tools::SafeOutput($category['name']).'" class="imgm" /></div>';
// }
// }
// $html .= '</li>';
// }
// }
// $html .= '</ul>';
// }
// $html .= '</li>';
// }
// return $html;
// }
после неё добавляем
protected function generateCategoriesMenu($categories, $is_children = 0)
{
$html = '';
foreach ($categories as $key => $category) {
if ($category['level_depth'] > 1) {
$cat = new Category($category['id_category']);
$link = Tools::HtmlEntitiesUTF8($cat->getLink());
} else {
$link = $this->context->link->getPageLink('index');
}
/* Whenever a category is not active we shouldnt display it to customer */
if ((bool)$category['active'] === false) {
continue;
}
$html .= '<li'.(($this->page_name == 'category'
&& (int)Tools::getValue('id_category') == (int)$category['id_category']) ? ' class="sfHoverForce"' : '').'>';
$html .= '<a href="'.$link.'" title="'.$category['name'].'">';
//$html .= '<img src="/img/c/'.(int)$category['id_category'].'-medium_default.jpg'.'" class="imgm" height="30" /><br>';
if($category['level_depth'] == '3' AND Tools::file_exists_cache(_PS_CAT_IMG_DIR_.(int)$category['id_category'].'-medium_default.jpg'))
$html .= '<img src="/img/c/'.(int)$category['id_category'].'-medium_default.jpg'.'" class="imgm" height="125" /><br>';
$html .= $category['name'];
$html .='</a>';
if (isset($category['children']) && !empty($category['children'])) {
$html .= '<ul>';
$html .= $this->generateCategoriesMenu($category['children'], 1);
$html.= '<li class="sfHoverForce">'.$category['promo_right'].'</li>';
$html .= '</ul>';
}
$html .= '</li>';
}
return $html;
}