Автор Тема: Изменение расположения модуля, если он вызывается хуком  (Прочитано 4883 раз)

03 Декабрь 2014, 12:00:51
Ответ #30
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
03 Декабрь 2014, 12:16:15
Ответ #31
  • Старожил
  • ****
  • Сообщений: 299
  • Репутация: +0/-0
  • Новичек
    • Просмотр профиля
Так тоже не работает. Мой модуль выводится на странице товара хуком hookProductFooter. Я просмотрел шаблон blockviewed.php функцию public function hookProductFooter($params), но там также не нашел цены.  В SQL-запросе не видно выбора значения Цены на товар из таблицы.
У меня prestashop 1.6.0.8. тема куплена на официальном сайте.
Борюсь с этим уже несколько дней, но пока не могу понять,как мне поэтапно сделать отображение Цены в этом модуле? Ведь по логике вещей,если цены нет в массиве $viewedProduct, нужно сделать так,чтобы она там была? Как это можно сделать?
03 Декабрь 2014, 12:24:28
Ответ #32
  • Ветеран
  • *****
  • Сообщений: 16667
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Если цены нет в этом массиве, то ее нужно добавить в blockviewed.php. Как в избранных
$row['price'] = Tools::displayPrice(Product::getPriceStatic((int)$row['id_product'], $usetax), $currency);
03 Декабрь 2014, 12:44:55
Ответ #33
  • Старожил
  • ****
  • Сообщений: 299
  • Репутация: +0/-0
  • Новичек
    • Просмотр профиля
Объявления $row в шаблоне blockviewed.php нет. Шаблон прикреплен ниже. В шаблоне есть массив $productsViewedObj в котором лежат переменные атрибутов товара,я попытался по примеру добавить туда и цену - $obj->price = $productsImagesArray[$productViewed]['price'];
Это ничего не дало.

В шаблонах smarty разбираюсь не сильно,поэтому мне сложно определить,как правильно добавить вывод цены. Может кто-нибудь просмотрит шаблон и подскажет? Буду благодарен.
03 Декабрь 2014, 12:54:10
Ответ #34
  • Ветеран
  • *****
  • Сообщений: 16667
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Шаблон smarty это файл tpl. У вас же файл класса модуля.
Переменную row замените на свою, важное в коде это присвоение цены переменной price массива productsViewedObj.
Можно прямо в инициализации объекта добавть переменную price
$productsViewedObj = array();
foreach ($productsViewed as $productViewed)
{
$obj = (object)'Product';
...
                $obj->price = Tools::displayPrice(Product::getPriceStatic((int)$productViewed]['id_product'], $usetax), $currency);
03 Декабрь 2014, 13:12:28
Ответ #35
  • Старожил
  • ****
  • Сообщений: 299
  • Репутация: +0/-0
  • Новичек
    • Просмотр профиля
Попробую,о результате отпишу. Спасибо за подсказку.