Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Новая кнопка


Zelaboba35

Recommended Posts

Здравствуйте, подскажите под кнопкой купить вывел новую кнопку записал ее в файл product.tpl. Все хорошо работает. А как ее показывать только в отдельной категории товаров не во всех?

Надіслати
Поділитися на інших сайтах


Чтобы нормально работать в шаблоне с категориями - нужно их отдать с контроллера. 

Найдите в контроллере страницы продукта (catalog/controller/product/product.php) строчку  
 

 $this->load->model('catalog/category');

После нее начинается работа с моделью категории для вытаскивания их в хлебные крошки. Вызовите нужный метод модели model_catalog_category, получите ID категорий, которые относятся к данному товару и отправьте во вью.
Во вью уже проверяйте, отображать или нет кнопку.
Возможно будет правильнее сразу в контроллере сделать отсев по категориям, во вью отправить переменную с флагом true/false, и показывать кнопку в зависимости от значения переменной - чтобы не засирать логикой вьюшку.

 

Если ничего из того, что я написал выше, не понятно - пишите, попробую растолковать.

Змінено користувачем Gorman
Надіслати
Поділитися на інших сайтах

Честно говоря не чего не понял, я думал сделать так: 

							<?php    
{if $page && $page->url == 'tehnika/note'}
<div><button type="button" id=""  class="btn btn-danger btn-block">кнопка</button></div>
{/if}
?> Но страница выходит с ошибкой.

 

Надіслати
Поділитися на інших сайтах


С какой ошибкой страница выходит?

Во-первых, вы пишите в шаблон, который имеет формат twig, верно? Twig - это шаблонизатор со своим синтаксисом, поэтому символы доллара для обозначения переменных здесь не используются, а if завершается endif, а не /if. Синтаксис условий в Twig выглядит так: 

 

 {% if page %}

Наш текст

{% endif %}

 

Во-вторых, почему вы думаете, что в шаблоне присутствует объект page и его свойство url? Как оно туда должно было попасть? (спойлер: в шаблон-view все попадает из контроллера страницы).

 

Если опять ничего не понятно, что я написал, нужно подтягивать знания не опенкарта, а php в первую очередь.

 

Если знаете js, простой (и неправильный) способ решения, если вывести кнопку у Вас нужно только в одной категории, может быть следующим: так как из twig-а не получить напрямую url (через вызов суперглобальных массивов), а из контроллера мы его не отдали, то можно спарсить url с помощью js, проверить его на совпадение с нужной категорией, и если категория нужная - то отобразить кнопку, иначе - скрыть/удалить элемент. Но, как уже написал, способ этот неправильный.

Если не знаете ни js, ни php, то только просить кого-нибудь.

Змінено користувачем Gorman
Надіслати
Поділитися на інших сайтах

А, если если tpl, то другой разговор :)

 

Приводите синтаксис в порядок, получайте URL из $_SERVER, если он у вас в приличном виде (в ЧПУ), сравнивайте и принимайте решение о выводе.

 

Или же все таки придется отправить переменную категории из контроллера во вью.

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.