Разместить блок в центральной колонке

Автор maggotische, 18 апреля 2013, 12:47:49

« назад - далее »

maggotische

Здравствуйте, каким образом можно разместить блоки "Новые товары" и "скидки"  в центральной колонке? Версия 1,5,4

Виталий

Вывести блоки на главной можно с помощью хука hookDisplayHome().
Добавьте
$this->registerHook('displayHome')
в функцию установки нужного модуля (для новых товаров blocknewproducts.php)
public function install()
{

и сам хук
public function hookDisplayHome($params)
{
//здесь код, можно взять из других хуков
// можно назначить новый шаблон
Cоздание интернет сайтов Webstudio UwK

maggotische

#2
мне нужно не только на главной, а на любой странице но в центральной колонке. Как это организовать?

И не понятно в каком именно месте вставлять
$this->registerHook('displayHome')

Исходный файл

public function install()
{
if (parent::install() == false || $this->registerHook('rightColumn') == false || $this->registerHook('header') == false || Configuration::updateValue('NEW_PRODUCTS_NBR', 5) == false)
return false;
return true;
}

DarinSr

Создать свой хук и поместить в шаблон  footer.tpl
.....
        {if !$content_only}
{$HOOK_MYHOOK}
</div>

В модулях добавить вывод в хуке MYHOOK.
Или же добавлять для каждого шаблона, для страницы продуктов в HOOK_PRODUCT_FOOTER и т.д.

maggotische

Спасибо, я попробую. Но на данный момент ответ похож на инструкцию по рисованию филина "нарисуйте кружочек, потом еще один, и быстро нарисуйте филина"

Mr.Sen

Цитата: DarinSr от 18 апреля 2013, 15:36:58
Создать свой хук и поместить в шаблон  footer.tpl
.....
        {if !$content_only}
{$HOOK_MYHOOK}
</div>

В модулях добавить вывод в хуке MYHOOK.
Или же добавлять для каждого шаблона, для страницы продуктов в HOOK_PRODUCT_FOOTER и т.д.
Это для тех кто знает. что-такое hook в prestashop
А кто не знает и не умеет программировать? Для тех
Цитировать"нарисуйте кружочек, потом еще один, и быстро нарисуйте филина"

maggotische

Цитата: Mr.Sen от 18 апреля 2013, 16:39:37
А кто не знает и не умеет программировать? Для тех

Простите, а здесь форум только для тех кто умеет программировать? Что такое хук я знаю. Но как правильно его установить и как привязать к нему модуль я не знаю. Именно по этой причине я задал этот вопрос здесь

DarinSr

ЦитироватьЭто для тех кто знает. что-такое hook в prestashop.
А кто не знает и не умеет программировать? Для тех
В справке, что вы привели, есть подробное объяснение, что такое hook, какие hooks есть в prestashop. Как ими пользоваться.
Осталось только разработать логику модуля, его внутренний алгоритм, т.е. то, как модуль должен работать.
О чем я написал.
1. Создать свой хук в системе.
2. Определить место вывода блока, это шаблон footer.tpl, так как нужно выводить блок на всех страницах.
3. Привязать к хуку нужные блоки.
Что не понятно? Осталось все перевести в код.
Если нужно готовое решение, то есть ветка Работа. Заказывайте, сделают, в этом случае самому ничего делать не нужно.

Mr.Sen

Цитата: DarinSr от 18 апреля 2013, 16:50:49
ЦитироватьЭто для тех кто знает. что-такое hook в prestashop.
А кто не знает и не умеет программировать? Для тех
В справке, что вы привели, есть подробное объяснение, что такое hook, какие hooks есть в prestashop. Как ими пользоваться.
Осталось только разработать логику модуля, его внутренний алгоритм, т.е. то, как модуль должен работать.
О чем я написал.
1. Создать свой хук в системе.
2. Определить место вывода блока, это шаблон footer.tpl, так как нужно выводить блок на всех страницах.
3. Привязать к хуку нужные блоки.
Что не понятно? Осталось все перевести в код.
Если нужно готовое решение, то есть ветка Работа. Заказывайте, сделают, в этом случае самому ничего делать не нужно.
Никто не просит от вас полного решения. Давайте ответ с сылками на сайты где можно узнать, что и как нужно делать. Ваш ответ понятен только вам. 

DarinSr

Ваш ответ понятен только вам. 
Если не дано понять, то стоит попытаться поучиться программировать для prestashop.

Виктор Демидов

DarinSr,  Mr.Sen
Предупреждение, читайте правила форума.
В теме ответы только по существу заданного вопроса.
Не согласны с предложенным решением, предлагайте свое.

maggotische

Ребят, я прошу прощения, но вразумительного ответа я так и не получил. Объясните пожалуйста как добавить хук, и как его привязать к модулю. Если же в данном форуме разрешено только давать расплывчатые ответы расчитанные на программистов и специалистов, то прошу прощения, но в таком случае непонятно зачем он нужен? Если бы я был программистом то не обращался бы со столь простой просьбой.

pav31

#12
Цитата: maggotische от 18 апреля 2013, 17:09:13
Ребят, я прошу прощения, но вразумительного ответа я так и не получил. Объясните пожалуйста как добавить хук, и как его привязать к модулю. Если же в данном форуме разрешено только давать расплывчатые ответы расчитанные на программистов и специалистов, то прошу прощения, но в таком случае непонятно зачем он нужен? Если бы я был программистом то не обращался бы со столь простой просьбой.
Чтобы создать свой хук в престе, придется научиться программировать
Также есть официальная документация на prestashop.com
Ну а если не хотите учиться, придется найти специалиста который поможет решить вашу проблему.

maggotische

#13
А если без создания собственного хука? Первый ответ в теме решает вопрос, но в том случае вывод возможен только на главную, как сделать такое же но для центральной колонки?

P.S.
По ссылка что вы дали люди создают модуль, мне не нужен модуль, мне нужно стандартный модуль вывести в центральной колонке

P.P.S.
Мне кажется что я что-то не так объясняю.....

Виктор Демидов

#14
Цитата: maggotische
Здравствуйте, каким образом можно разместить блоки "Новые товары" и "скидки"  в центральной колонке? Версия 1,5,4
Для размещения блоков в Prestashop 1.5  существует система хуков, front-office hooks, т.е. системой определены метки для того, чтобы была возможность динамически создавать страницы и менять структуру страниц так, как вам необходимо .
Для всех страниц действуют хуки позиционирования блоков:
displayHeader
displayTop
displayLeftColumn
displayRightColumn
displayFooter
displayHome

Готовой функции для вывода блоков в центре и на всех страницах нет.
Вам нужно создать такую фукнкцию (хук).
Можно вывести только на отдельных страницах.
Например, существует хук displayFooterProduct, который выводит код HTML в центре, внизу только на странице описания продукта.