Форум русской поддержки Joomla!® CMS
28.06.2017, 07:53:08 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Вывод блока в определенной категории

 (Прочитано 158 раз)
0 Пользователей и 1 Гость смотрят эту тему.
zahar_92
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 133



« : 18.05.2017, 20:33:14 »

Всем привет. У меня есть условие вывода информации о монтаже, которое должно выводится во всех категориях, кроме тех что в условии.
Код:
<?php if ($product->category_id != '5') {?>

//тут инфа

<?php }?>
Как его его переделать, чтобы информация не выводилась в Категории 5 и всех ее подкатегориях? Просто перечислять категории мне кажется глупо, должен быть способ проще..
Код:
<?php if ($product->category_id != '5' && $product->category_id != '6' && $product->category_id != '7') {?>

//тут инфа

<?php }?>

В php не очень силен, условие писал с помощью Google и поиска по форуму.
« Последнее редактирование: 19.05.2017, 11:55:25 от zahar_92 » Записан
nevigen
Moderator
*****

Репутация: +764/-17
Offline Offline

Пол: Мужской
Сообщений: 9280


http://n*****n.com


« Ответ #1 : 18.05.2017, 20:42:35 »

перечислять все.
Записан
zahar_92
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 133



« Ответ #2 : 18.05.2017, 20:52:33 »

Жаль.. Спасибо за ответ
Записан
Septdir
Практически профи
*******

Репутация: +76/-3
Offline Offline

Пол: Мужской
Сообщений: 1791


Skype: septdir


« Ответ #3 : 18.05.2017, 21:13:31 »

Ну вообще есть еще два варианта, полтора
1. Тоже самое что и перечислять, только id категорий в массив убрать, так и добавлять легче да код выйдет короче
Код
<?php 
$exceptions = array(5, 7, 7);
if (!in_array($product->category_id, $exceptions)) {?>
 
//тут инфа
 
<?php }?>
 
2. Пишете запрос на получение древа категорий, кстати возможно он есть готовый в моделе, не помню, ну а дальше как в первом. Но это доп запрос причем не маленький.
Записан
kit2m2
Живу я здесь
******

Репутация: +97/-0
Offline Offline

Пол: Мужской
Сообщений: 1061



« Ответ #4 : 19.05.2017, 05:53:49 »

Есть платное решение
Записан
zahar_92
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 133



« Ответ #5 : 19.05.2017, 10:35:06 »

Ну вообще есть еще два варианта, полтора
1. Тоже самое что и перечислять, только id категорий в массив убрать, так и добавлять легче да код выйдет короче
Код
<?php 
$exceptions = array(5, 7, 7);
if (!in_array($product->category_id, $exceptions)) {?>
 
//тут инфа
 
<?php }?>
 
Спасибо! Это конечно проще и лаконичнее.. Воспользуюсь вашим вариантом.

Плагин хороший, но не совсем то, что мне нужно. У меня в этом условии есть еще условие. Поэтому вывожу прямо в шаблоне.
Записан
zahar_92
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 133



« Ответ #6 : 19.05.2017, 11:02:24 »

А как в продукте получить category_id? $product->category_id не получается. В списке продуктов работает а в самом продукте нет.

Код:
[product_categories] => Array
        (
            [0] => stdClass Object
                (
                    [product_id] => 222
                    [category_id] => 24
                    [product_ordering] => 1
                )

        )

Разобрался $this->category_id
Записан
dmitry_stas
Профи
********

Репутация: +916/-6
Offline Offline

Сообщений: 9547



« Ответ #7 : 19.05.2017, 11:06:04 »

$this->category_id

и в карточке товара к объекту товара лучше обращаться тоже как $this->product, а не $product. во избежание недоразумений. в некоторых случаях там может быть совсем не то, что ожидается.
Записан
zahar_92
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 133



« Ответ #8 : 19.05.2017, 11:07:39 »

$this->category_id

и в карточке товара к объекту товара лучше обращаться тоже как $this->product, а не $product. во избежание недоразумений. в некоторых случаях там может быть совсем не то, что ожидается.
Спасибо! Работает
Записан
zahar_92
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 133



« Ответ #9 : 19.05.2017, 11:09:40 »

$this->product в списке товаров не работает, а $product норм.. Это я накосячил или это нормально?
Записан
dmitry_stas
Профи
********

Репутация: +916/-6
Offline Offline

Сообщений: 9547



« Ответ #10 : 19.05.2017, 11:11:46 »

в списке товаров и не должно работать, только в карточке. в списке товаров $product
Записан
zahar_92
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 133



« Ответ #11 : 19.05.2017, 11:14:49 »

Неправильно понял ваше сообщение
и в карточке товара к объекту товара лучше обращаться тоже как $this->product, а не $product. во избежание недоразумений. в некоторых случаях там может быть совсем не то, что ожидается.

Думаю тему можно закрывать. Вопрос решен, спасибо, с меня +!
« Последнее редактирование: 19.05.2017, 11:26:57 от zahar_92 » Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet