Автор Тема: Не смог отключить отображение блока в определенной странице  (Прочитано 1448 раз)

15 Ноябрь 2015, 18:19:17
  • Пользователь
  • **
  • Сообщений: 65
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Добрый вечер! Блок "Лидеры продаж" пытаюсь отключить отображение на странице Smart блога и профиля "лояльность".
У блока несколько хуков, но почему-то видно только одно (скрин во вложении)
15 Ноябрь 2015, 19:22:22
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 1808
  • Репутация: +49/-1
  • Сообщество PrestaShop
    • Просмотр профиля
В исключениях можно выбрать только контроддеры станиц, которые показвнны в Настроки > SEO и URL.
Если Smart блога добавил свои контроллеры, тогда можно исключить.
Что такое профиль "лояльность"?
15 Ноябрь 2015, 19:26:25
Ответ #2
  • Пользователь
  • **
  • Сообщений: 65
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В исключениях можно выбрать только контроддеры станиц, которые показвнны в Настроки > SEO и URL.
Если Smart блога добавил свои контроллеры, тогда можно исключить.
Что такое профиль "лояльность"?
Баллы за покупки, и обмен на купон.
15 Ноябрь 2015, 19:58:44
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Убрать показ можно для личного кабинета - myaccount.
16 Ноябрь 2015, 13:26:59
Ответ #4
  • Пользователь
  • **
  • Сообщений: 65
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Убрать показ можно для личного кабинета - myaccount.
Как отключить, если в странице "Расположение блоков" хука "displayRightColumn" нету.
Популярные товары хочу отключить (модуль "Лидеры продаж")
16 Ноябрь 2015, 14:57:05
Ответ #5
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В Расположение блоков в правом верхнем углу нажмите кнопку Расположить модуль.
На отрывшейся страницы выберите модуль и исключения.
16 Ноябрь 2015, 15:01:11
Ответ #6
  • Пользователь
  • **
  • Сообщений: 65
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В Расположение блоков в правом верхнем углу нажмите кнопку Расположить модуль.
На отрывшейся страницы выберите модуль и исключения.
Выбрал
16 Ноябрь 2015, 15:07:27
Ответ #7
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Во втором поле нужно выбрать хук для которого эти исключения будут применяться. Если нужного хука там нет, тогда нужно в модуле исправить названия хуков, так как prestashop выводит в этом поле свои стандарные хуки.   
16 Ноябрь 2015, 15:44:11
Ответ #8
  • Пользователь
  • **
  • Сообщений: 65
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
... Если нужного хука там нет, тогда нужно в модуле исправить названия хуков, так как prestashop выводит в этом поле свои стандарные хуки.
Подскажи пожалуйста, примерно как исправить?
16 Ноябрь 2015, 18:39:39
Ответ #9
  • Фрилансер
  • *
  • Сообщений: 113
  • Репутация: +3/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В файле /modules/blockbestsellers/blockbestsellers.php измените
if (!parent::install()
|| !$this->registerHook('displayRightColumn')
|| !$this->registerHook('displayLeftColumn')
и соотвествено сами хуки
public function hookDisplayRightColumn($params)
public function hookDisplayLeftColumn($params)
Переустановите модуль
16 Ноябрь 2015, 19:13:37
Ответ #10
  • Пользователь
  • **
  • Сообщений: 65
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В файле /modules/blockbestsellers/blockbestsellers.php измените
if (!parent::install()
|| !$this->registerHook('displayRightColumn')
|| !$this->registerHook('displayLeftColumn')
и соотвествено сами хуки
public function hookDisplayRightColumn($params)
public function hookDisplayLeftColumn($params)
Переустановите модуль
Тут rightColumn-а не было, и поэтому добавил
public function install()
{
$this->_clearCache('*');

if (!parent::install()
|| !$this->registerHook('header')
|| !$this->registerHook('leftColumn')
|| !$this->registerHook('DisplayRightColumn')
Остальные два переименовал с RightColumn на DisplayRightColumn
public function hookDisplayRightColumn($params)
{
if (!$this->isCached('blockbestsellers.tpl', $this->getCacheId('blockbestsellers-col')))
{
public function hookLeftColumn($params)
{
return $this->hookDisplayRightColumn($params);
}
Все равно модуль виден
16 Ноябрь 2015, 20:02:53
Ответ #11
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Сбросьте настройки модуля. Очистите кеш, удалите файл /prestashop16/cache/class_index.php.
16 Ноябрь 2015, 20:17:15
Ответ #12
  • Пользователь
  • **
  • Сообщений: 65
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Сбросьте настройки модуля. Очистите кеш, удалите файл /prestashop16/cache/class_index.php.
Кэш очистил, файл удалил. Настройку как сбросить?
Все равно видны.
"Модуль уже трансплантирован в хук" эту сообщению как ошибку воспринимать или так и должно быть?
16 Ноябрь 2015, 22:36:41
Ответ #13
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Делаю как написано в этой теме.
1. Удалил модуль
2. Изменил хуки
3. Очистил в ручную кеш и удалил файл class_index.php.
4. Установил модуль
5. В Модули > Расположение блоков в displayRightColumn выбрал модуль Лидеры продаж нажал Править.
6. В исключениях выбрал myaccount, нажал Сохранить
7. Получил сообщение - Модуль перенесен.
8. Модуль не показывает на всех страницах личного кабинета.
Никаких ошибок.
17 Ноябрь 2015, 06:06:38
Ответ #14
  • Пользователь
  • **
  • Сообщений: 65
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Заново все проделал, и заработало.
Благодарю всем за вашу помощь!