Автор Тема: Добавить кнопку сравнение товаров на главную  (Прочитано 353 раз)

23 Июнь 2020, 17:38:27
  • Фрилансер
  • *
  • Сообщений: 142
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Добрый день имею Prestashop 1.6 и тему Theme 1209 version 1.0 Prestige
В ней есть по умолчанию сравнение товаров, кнопка в каталогах товаров
И есть у меня на главной модуль wkproductcategorytab выводит товары на главную
Хочу добавить к этим товарам на главной кнопку "добавить к сравнению" пытался скопировать код из product-list.tpl
                      {if}
                        <div class="functional-buttons clearfix">
                            {hook h='displayProductListFunctionalButtons' product=$product}
                            {if isset($comparator_max_item) && $comparator_max_item}
                                <div class="compare">
                                    <a class="add_to_compare" href="{$product.link|escape:'html':'UTF-8'}" data-id-product="{$product.id_product}" title="{l s='Add to Compare'}">{l s='Add to Compare'}</a>
                                </div>
                            {/if}
                        </div>
                    {/if}

Попробовал это вставить в tpl модуля и получил ошибку 500) Может кто знает как это сделать и в чем я не прав)


23 Июнь 2020, 17:42:48
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
В php файлах модулей определяются переменные шаблона. Нельзя просто перенести код из шаблона одного модуля в другой, нужно еще и переменные в php файл добавить.
23 Июнь 2020, 17:48:03
Ответ #2
  • Фрилансер
  • *
  • Сообщений: 142
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В php файлах модулей определяются переменные шаблона. Нельзя просто перенести код из шаблона одного модуля в другой, нужно еще и переменные в php файл добавить.
Это я перенес из файла темы tpl в файл модуля tpl.
Как я могу сделать эту кнопку? Может есть другой вариант?
23 Июнь 2020, 18:22:36
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Чтобы из модуля в модуль не переносить переменные, в модулях используют шаблоны темы.
Менять нужно модуль, который выводит товары на главную.
Как например модуль новые товары на главной, он использует шаблон product-list.tpl
23 Июнь 2020, 18:38:12
Ответ #4
  • Ветеран
  • *****
  • Сообщений: 22125
  • Репутация: +25303/-1
  • Prestashop - просто и эффективно
    • Просмотр профиля
Js файлы, функции проверьте. На странице категории подключаются js для обработки клика для сравнения, на главной может и не быть этого кода.
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
23 Июнь 2020, 19:03:36
Ответ #5
  • Фрилансер
  • *
  • Сообщений: 142
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Js файлы, функции проверьте. На странице категории подключаются js для обработки клика для сравнения, на главной может и не быть этого кода.
js подключатся, вроде с этим нет проблем
23 Июнь 2020, 19:09:09
Ответ #6
  • Фрилансер
  • *
  • Сообщений: 142
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Чтобы из модуля в модуль не переносить переменные, в модулях используют шаблоны темы.
Менять нужно модуль, который выводит товары на главную.
Как например модуль новые товары на главной, он использует шаблон product-list.tpl
Не понимаю о чем вы? из какого модуля в какой?)))  Я не из модуля в модуль кусок tpl вставил а из Product-list.tpl который в теме,
перенес кусок который отвечает только за кнопку и получил ошибку 500
Вопрос как правильно перенести этот кусок кода или что можно написать своё лиж-бы работало, чтоб по нажатию на ссылку товар добавлялся к сравнению?
Менять модуль из-за этого не логично, это единственный нормальный модуль который я нашел + я за него заплатил)) :D
23 Июнь 2020, 21:00:55
Ответ #7
  • Ветеран
  • *****
  • Сообщений: 22125
  • Репутация: +25303/-1
  • Prestashop - просто и эффективно
    • Просмотр профиля
Показ ошибок в prestashop включите. 500 ошибка ни о чем не говорит.
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!