Автор Тема: как добавить в модуль функцию для хука  (Прочитано 1128 раз)

05 Март 2017, 15:12:54
  • Новичок
  • *
  • Сообщений: 34
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Хочу , чтобы модуль отображался в этом хуке displayProductPriceBlock. Прочла, чтобы он отображался нужно в сам модуль добавить функцию для этого хука, но не знаю как написать такую функцию. Подскажите пожалуйста, как ее написать или где можно найти уже готовую функцию? Буду очень благодарна :)
05 Март 2017, 15:20:25
Ответ #1
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
PrestaShop 1.6 > Creating a PrestaShop Module > Creating a first module
Тут объяснено подробно и дан пример.
05 Март 2017, 15:29:13
Ответ #2
  • Новичок
  • *
  • Сообщений: 34
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Но я там не нашла ничего про добавление нового хука в модуль.
А есть еще где-то такая информация?
05 Март 2017, 15:39:57
Ответ #3
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Там есть как добавить модуль в существующий хук.
public function install()
{
  if (!parent::install() ||
    !$this->registerHook('leftColumn')
  )
    return false;
 
  return true;
}

Если нужно создать свой хук, то сделайте как написано в этой теме:
Prestashop: Как создать Hook
05 Март 2017, 15:57:13
Ответ #4
  • Новичок
  • *
  • Сообщений: 34
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Он установился, но пишет, что нет тем для модуля. Что это означает? Это можно как-то исправить?
05 Март 2017, 16:00:32
Ответ #5
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Точно "тем"? Такой ошибки быть не должно.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
05 Март 2017, 16:10:43
Ответ #6
  • Новичок
  • *
  • Сообщений: 34
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Извините, то просто я раньше пробовала добавить хук в модуль и записала функцию для хука:
function displayProductPriceBlock($params)
{
global $smarty;
global $cookie;
$zero = Configuration::get('_ZERO_');
$product = new Product($_GET['id_product'], false, intval($cookie->id_lang));
$art = $this->l("Ref.: ");
if(Validate::isLoadedObject($product))
$smarty->assign('product_b1c', array($product->name,(Configuration::get('_REF_')?" ".$art.$product->reference:'')));
if ($zero == 1) $quantity = StockAvailable::getQuantityAvailableByProduct($_GET['id_product'], $id_product_attribute = null, $id_shop = null);
else $quantity = 5;
if(Validate::isLoadedObject($product)) $smarty->assign('product_available', $quantity);
//$this->context->controller->addJS($this->_path.'js/buyme.js');

return $this->display(__FILE__, 'fastorder.tpl');
}
Убрала ее теперь ничего не не отображается(
Как исправить чтоб оно заработала?(((
05 Март 2017, 16:31:55
Ответ #7
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
PrestaShop 1.6 > Creating a PrestaShop Module > Creating a first module
Тут объяснено подробно и дан пример.
Сначала изучаете руководство разработчика. В нем много примеров как создавать модули, какая структура у модуля и т.д. Потом большая часть вопросов будет ясна. У вас все в куче, в одном хуке, так не делается.

global $smarty;
global $cookie;
Это для старых версий prestashop, в prestashop 1.6 ненужно
Переменные из массива POST, GET получают в контроллере.

Начните с уроков по php и smarty. А то объяснять нужно с азов.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
05 Март 2017, 16:54:00
Ответ #8
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Он установился, но пишет, что нет тем для модуля. Что это означает? Это можно как-то исправить?
Может ошибка "нет шаблона"?