Автор Тема: Добавить хук в newsletter  (Прочитано 531 раз)

21 Март 2017, 10:24:53
  • Фрилансер
  • *
  • Сообщений: 160
  • Репутация: +5/-0
  • BSDA Certification
    • Просмотр профиля
Доброго всем.

Prestashop 1.6

Понадобилоь мне перенести модуль"Блок рассылки" в хук displayHome. Однако, такой возможности в модуле нет. Можно в displayFooter, displayLeftCulumn, displayHeader.... но displayHome в модуле не зарегистрирован.

Смотрю https://github.com/PrestaShop/newsletter/blob/master/newsletter.php

Метода RegisterHook () нет. и функции вида public function hookDST_HOOK($params)  тоже нет.

Каким путём зарегистрировать в модуле displayHome?

Для Вас, уважаемые профи, "?" элементарный..... помогите чайнику



21 Март 2017, 11:27:01
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
22 Март 2017, 07:42:30
Ответ #2
  • Фрилансер
  • *
  • Сообщений: 160
  • Репутация: +5/-0
  • BSDA Certification
    • Просмотр профиля
Прочитал по ссылке, офдоки. Вопрос:

TPL шаблона в модуле нет,

список файлов модуля:
--------------------------------
CHANGELOG.txt
Readme.md
composer.json 
config.xml     
config_.xml   
config_ru.xml
index.php
logo.gif
logo.png
newsletter.php
translations
----------------------------

Что должно быть в функции вместо шаблона?

public function hookDisplayHome($params)
{
return $this->display(__FILE__, 'шаблон.tpl');  ????
}

Что в коде модуля возвращает HTML  код в заданный хук, так и не понял....

код php файла:
https://github.com/PrestaShop/newsletter/blob/master/newsletter.php


 
22 Март 2017, 10:58:45
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 105673
  • Репутация: +39553/-0
    • Просмотр профиля
    • Webstudio UwK
Понадобилоь мне перенести модуль"Блок рассылки" в хук displayHome.
...
Смотрю https://github.com/PrestaShop/newsletter/blob/master/newsletter.php
Не тот модуль смотрите.
Блок с формой подписки подключается модулем "blocknewsletter".
Модуль "newsletter" используют для имрота email в .CSV файл.
Cоздание интернет сайтов Webstudio UwK
22 Март 2017, 17:31:13
Ответ #4
  • Фрилансер
  • *
  • Сообщений: 160
  • Репутация: +5/-0
  • BSDA Certification
    • Просмотр профиля
Виталий
Вы правы, именно этот модуль и следовало править. Некоторый тупизм свойственен "чайникам".  В итоге, задачка оказалась элементарной.


if (!parent::install() || !Configuration::updateValue('PS_NEWSLETTER_RAND', rand().rand()) || !$this->registerHook(array('header', 'footer', 'home', 'actionCustomerAccountAdd')))
                        return false;

.......
public function hookHome($params)
        {
                return $this->hookDisplayLeftColumn($params);
        }

Модуль помещён куда требовалось.
-----------------------------------------------------------
Может не совсем по теме, но просто есть желание быть здесь не только вопрошающим, а быть полезным.
Например, могу поместить shell скрипт для обновления курсов валют или пример настройки серверного кеша (Prestashop +HTTPS+ Varnish)....

Но есть ли здесь необходимость в подобной ин-мации?  Если писать текст, то знать, что это нужно.




22 Март 2017, 18:21:39
Ответ #5
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
По настройке севера под prestashop часто спрашивают. Так что такая информация точно будет нужна.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
25 Март 2017, 15:05:48
Ответ #6
  • Фрилансер
  • *
  • Сообщений: 160
  • Репутация: +5/-0
  • BSDA Certification
    • Просмотр профиля