Перейти к содержанию
Loggos

Добавить список производителей в сайдбар и вывести кол-во товаров в данной категории возле заголовка

Рекомендуемые сообщения

Здравствуйте, уважаемые Форумчане.
Нужна Ваша помощь.

 

Есть сайт на OpenCart. Версия 1.5.5.1.2
1) У каждого товара есть атрибут производитель. Нужно вывести список всех производителей в сайдбар, на странице категории. Искал долго, но без знаний пхп не могу вывести. Видел, что можно модулем это сделать, но те модули, которые я смотрел - платные.

2) На этой же странице категории нужно возле главного заголовка отобразить кол-во товаров, которое находится в данной категории. Я на скриншоте показал, как это должно примерно выглядеть.

Если нужна дополнительная информация - пишите.

Спасибо за внимание. Хорошего дня.

1.png

2.png

Изменено пользователем Loggos

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1) Это скорее из функционала фильтров. В самом опенкарте есть бесплатный фильтр, но конечно не так удобно заполнять будет.

2)  Добавьте в catalog/view/theme/тема/product/category.tpl, после h1

<?php echo $product_total; ?>

А в catalog/controller/product/category.php после

$product_total = $this->model_catalog_product->getTotalProducts($filter_data);

добавьте 

$data['product_total'] = $product_total;

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

пишите. сделаю

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
23 минуты назад, ZyXeL сказал:

$product_total = $this->model_catalog_product->getTotalProducts($filter_data);

Такой строки нет, но есть такая:

$product_total = $this->model_catalog_product->getTotalProducts($data);	

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
26 минут назад, ZyXeL сказал:

2)  Добавьте в catalog/view/theme/тема/product/category.tpl, после h1


<?php echo $product_total; ?>

А в catalog/controller/product/category.php после


$product_total = $this->model_catalog_product->getTotalProducts($filter_data);

добавьте 


$data['product_total'] = $product_total;

 

Сделал так - выводится ошибка.

2.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

del,   не заметил, что 1.5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

не $data  а    $this->data

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
8 минут назад, fanatic сказал:

не $data  а    $this->data

То есть, вот так?

$product_total = $this->model_catalog_product->getTotalProducts($this->data);

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
29 минут назад, Loggos сказал:

Такой строки нет, но есть такая:

все верно.

@ZyXeL  написал решение для версии 2.x

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, Loggos сказал:

То есть, вот так?

нет.  тута

28 минут назад, Loggos сказал:

$data['product_total'] = $product_total;

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
26 минут назад, fanatic сказал:

нет.  тута

 

Выводится, но пишет неправильную цифру.

 

3.png

4.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
36 минут назад, Loggos сказал:

но пишет неправильную цифру.

в контроллере две строки

1 час назад, Loggos сказал:

$product_total = $this->model_catalog_product->getTotalProducts($data);

нужно

$this->data['product_total'] = $product_total;

вставить после второй строки

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.