Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 342 Ответов
  • 79032 Просмотров
*

ELLE

  • Глобальный модератор
  • 4510
  • 893 / 0
Обновление поста 21.11.2014, рецепты ниже не будут работать на J1.5, J1.6, J1.7. Только для последних версий J2.5 и J3.x

По мотивам - Различные условия в шаблонах

Варианты вызова модуля в шаблонах компонента Jshop
как вызвать модуль, например, в шаблоне категории или товара, 3 способа:

1. Вывод конкретного модуля, на примере модуля меток
Спойлер
[свернуть]

2. Вывод любого (всех) модулей, опубликованных в конкретной позиции - bottom
Спойлер
[свернуть]

3. Еще вариант вызова модулей по позиции
Спойлер
[свернуть]

Различные условия в шаблоне Joomla (templates/ВАШ_Шаблон/index.php)

1. Получаем необходимые параметры

Перед составлением условий, рекомендую - отключить SEF, тогда будет видно в URL какие у вас параметры

Код: php
$input = JFactory::getApplication()->input;
$option = $input->getCmd('option', '');
$controller = $input->getCmd('controller', '');

$option определяет компонент, в нашем случае $option это 'com_jshopping'
$controller работает уже внутри компонента - это может быть 'category', 'product', 'cart' и другое; все это можете узнать отключив SEF в настройках и посмотрев чему равен $controller (в адресной строке) на интересующих вас страницах.

Логические операторы
(для совсем новичков, чтоб вы сами могли составлять условия)
[spoiler title=логические операторы]
==  РАВНО
напр. - $controller == 'product' (показать в товарах)
!=  НЕ РАВНО!
напр. - $controller != 'product' (НЕ показывать в товарах)
&&  И
напр. - $controller == 'category' && $controller == 'product' (и в категориях и в товарах)[/spoiler]

Примеры для шаблона Joomla (templates/ВАШ_Шаблон/index.php)

1. Компонент Jshop установлен как главный пункт меню (для красивых ссылок, допустим), но не хотим выводить его на главной
Код: php
<?php if (JURI::current()!= JURI::base()):?> //само условие
<jdoc:include type="component" /> //непосредственно вывод компонента
<?php endif;?>

2. Позицию модуля не показывать в корзине и при оформлении заказа
Код: php
<?php if ( $option == 'com_jshopping' && $controller != 'cart' && $controller != 'checkout' ) : ?>
<jdoc:include type="modules" name="left" />
<?php endif; ?>

3. Показать модуль только в категории, у которой ID=5
Спойлер
[свернуть]

Различные условия в шаблонах компонента Joomshopping

Первым делом переопределяем шаблоны -  всю папку /components/com_jshopping/templates/default/ копируем, переименовываем в com_jshopping и загружаем по адресу /templates/ваш_шаблон/html/*

1. Выводить описание категории только на первой странице (на второй и последующих - описания не будет)
/templates/ваш_шаблон/html/com_jshopping/category/category_default.php
Спойлер
[свернуть]

2. Выводить что угодно в магазине только для авторизованных пользователей
Спойлер
[свернуть]
В основном мануал собран из тех решений что уже встречались на форуме, для вашего удобства - всё в одном месте, довольно подробно, с пояснениями, - поэтому не стесняйтесь - экспериментируйте с условиями :)
« Последнее редактирование: 03.03.2020, 13:37:38 от nevigen »
*

misteri27

  • Захожу иногда
  • 490
  • 0 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #180 : 04.03.2014, 19:46:38 »
Доброго дня. У меня реализовано запрет на вывод при оформлении заказа так
Код
<?php 
    function showPage($x = array()){
    return array_intersect_assoc($x,  $_REQUEST) == $x;
}
if(!showPage(array('option'=>'com_jshopping', 'controller'=>'checkout' ))):?>
<?php endif; ?>
Но мне еще нужно убрать из товара . Как сделать по отдельности то понял, а вот как это реализовать вместе? Буду признателен за ответ.
Я пробовал вывести таким способом
Код
<?php if ( $option == 'com_jshopping' && $controller != 'product' && $controller != 'checkout' ) : ?>
модуль
<?php endif; ?>
Но тогда модуль не выводиться на Других страницах не относящихся к JoomShopping. То есть на Главной и других информационных страницах.
« Последнее редактирование: 05.03.2014, 14:34:43 от misteri27 »
*

misteri27

  • Захожу иногда
  • 490
  • 0 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #181 : 10.03.2014, 11:48:01 »
Сделал  таким способом .
Код
<?php 
$controller = JRequest::getVar('controller', null);
if ( $controller != 'product' && $controller != 'checkout' ) : ?>
модуль
<?php endif; ?>
Не знаю на сколько это правильно. Но работает.
*

McCafferty

  • Захожу иногда
  • 77
  • 3 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #182 : 13.03.2014, 20:38:46 »

2. Позицию модуля не показывать в корзине и при оформлении заказа
Код: php
<?php if ( $option == 'com_jshopping' && $controller != 'cart' && $controller != 'checkout' ) : ?>
<jdoc:include type="modules" name="left" />
<?php endif; ?>


Прописал так, и у меня наоборот нигде не показывается, а показывается только в корзине и при оформлении заказа ))
И также где не показывается там пустое место, тоесть какбы модуль есть, но скрыт, как убрать его вообще
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #183 : 13.03.2014, 20:43:29 »
Прописал так, и у меня наоборот нигде не показывается, а показывается только в корзине и при оформлении заказа ))
:)
Спойлер
[свернуть]
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Single92

  • Захожу иногда
  • 134
  • 2 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #184 : 21.03.2014, 14:51:25 »
Здравствуйте.

Подскажите пожалуйста что не так делаю?

Нужно вывести модуль в карточке товара.

Вставляю в head шаблона joomla:

<?php if ( $this->countModules('right_bottom') && $option == 'com_jshopping' && $controller == 'product' ) : ?>
<jdoc:include type="modules" name="right_bottom" />
<?php endif; ?>

ничего не получается, заранее спасибо!
*

nevigen

  • Moderator
  • 10436
  • 863 / 25
  • http://n*****n.com
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #185 : 21.03.2014, 15:00:57 »
а причем тут хеад ?
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

Single92

  • Захожу иногда
  • 134
  • 2 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #186 : 21.03.2014, 15:02:00 »
а куда?) нужно именно в блок этой позиции, или как?
*

nevigen

  • Moderator
  • 10436
  • 863 / 25
  • http://n*****n.com
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #187 : 21.03.2014, 15:11:33 »
хеад это название позиции блока ?
или это тег <head> шаблона ?
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

Single92

  • Захожу иногда
  • 134
  • 2 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #188 : 21.03.2014, 15:12:58 »
тег <head> шаблона.
*

nevigen

  • Moderator
  • 10436
  • 863 / 25
  • http://n*****n.com
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #189 : 21.03.2014, 15:15:45 »
тогда мой вопрос остается в силе.
изучайте инфу по шаблону Joomla.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

Single92

  • Захожу иногда
  • 134
  • 2 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #190 : 21.03.2014, 15:25:24 »
если вставляю в в блок позиции, то весь сайт белый . ну шаблон gk-esports  там вобще всё как то по другому((
*

nevigen

  • Moderator
  • 10436
  • 863 / 25
  • http://n*****n.com
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #191 : 21.03.2014, 15:30:09 »
к студии Гарвик :)
пусть учат Вас работать с приобретенным шаблоном :)
вставлять надо в модульные позиции
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

Single92

  • Захожу иногда
  • 134
  • 2 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #192 : 21.03.2014, 15:41:50 »
спасибо!

я уже 100 раз пожалел)
*

misteri27

  • Захожу иногда
  • 490
  • 0 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #193 : 22.03.2014, 12:17:16 »
Кто подскажет как не выводить модуль в карте товара определенной категории?
*

McCafferty

  • Захожу иногда
  • 77
  • 3 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #194 : 22.03.2014, 12:47:10 »
:)
Спойлер
[свернуть]

Спасибо, посмеялся, теперь буду подкалывать таких же пиз**ов как я)) Видно чтото с условием нахимичил и получилось наоборот)

Второй вопрос тогда в силе, как убрать вместе с модулем и его DIV , а то шаблон думает что там чтото есть и не растягивает контент
*

misteri27

  • Захожу иногда
  • 490
  • 0 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #195 : 23.03.2014, 14:01:37 »
Кто подскажет как не выводить модуль в карте товара определенной категории?
Может все же кто-то подскажет как убрать модуль в карте товара одно категории?
Как вывести модуль только в карте товара одной категории то я сделал
Код
<?php 
$controller = JRequest::getVar('controller', null);
$category_id = JRequest::getVar('category_id', null);
if ($category_id == '600' AND $controller == 'product' ) : ?>
<div id="gkLeftTop" class="gkMain">
<jdoc:include type="modules" name="left_top" style="<?php echo $this->module_styles['left_top']; ?>" />
</div>
<?php endif; ?>
А вот что бы наоборот не получается . Если ставлю
Код
if ($category_id != '600' AND $controller != 'product' )
то не показывает в категории и не показывает во всех картах товаров, не зависимо от категории . Посоветуйте как изменить код что бы было как нужно.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #196 : 23.03.2014, 20:33:10 »
Код: php
if (!($category_id == '600' && $controller == 'product'))
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

misteri27

  • Захожу иногда
  • 490
  • 0 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #197 : 24.03.2014, 00:39:52 »
Код: php
if (!($category_id == '600' && $controller == 'product'))
Спасибо работает.
*

McCafferty

  • Захожу иногда
  • 77
  • 3 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #198 : 24.03.2014, 12:01:19 »
dmitry_stas, а на счет того что показ модуля убираешь, а место остается.
К примеру если просто убрать модуль, то и обертка div пропадает от него, а если этими условиями то div остается и мешается..

Как быть ?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #199 : 24.03.2014, 12:39:03 »
условие в шаблон прописывать выше чем оберточный div
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

McCafferty

  • Захожу иногда
  • 77
  • 3 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #200 : 24.03.2014, 14:11:47 »
условие в шаблон прописывать выше чем оберточный div
Конечно так все и стоит
Код
  <?php if($this->countModules('right')) : ?>
  <div class="grid_<?=$tpl->positionData['right'];?> content">
    <?php if ( $option == 'com_jshopping' && $controller != 'product' ) : ?>
    <jdoc:include type="modules" name="right" style="xhtml" />
    <?php endif; ?>
  </div>
  <?php endif; ?>
Шаблон чужой может grid что не отрабатывает, если ваши слова верны, то ОК, я все равно с нуля буду шаблон делать, так что без grid будет

в коде остается
Код
<div class="grid_2 content"></div>
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #201 : 24.03.2014, 14:42:28 »
Конечно так все и стоит

где? может где то и стоит. но явно не в приведенном коде. тут я вижу что условие стоит после оберточного дива. а надо до
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

McCafferty

  • Захожу иногда
  • 77
  • 3 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #202 : 24.03.2014, 15:16:11 »
где? может где то и стоит. но явно не в приведенном коде. тут я вижу что условие стоит после оберточного дива. а надо до
да сори, это уже мой эксперимент со стандартным условием.
Как вы сказали - div пропадает, а вот div основного контента не меняет класс с grid_8 на grid_10, если просто отключить все модули то все ОК .
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #203 : 24.03.2014, 18:35:12 »
Ну так а чего ж ему менять класс то? :) Вы что то дописывали, чтобы он его менял? :) Ладно, предлагаю завершить дискуссию, ибо по хорошему эта тема мало к ней уже относится. Тем более что судя по "grid" - шаблон на uikit. А исходя из uikit - скорее всего YooTheme. А их шабы  - это вообще отдельный разговор.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

McCafferty

  • Захожу иногда
  • 77
  • 3 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #204 : 24.03.2014, 19:14:14 »
Ну так а чего ж ему менять класс то? :) Вы что то дописывали, чтобы он его менял? :)
Ну так если нет модулей он же меняет класс.. гдето прописано это.  Ладно закроем тему, я все равно буду делать свой шаблон без grid, со своими условиями, спасибо
*

McCafferty

  • Захожу иногда
  • 77
  • 3 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #205 : 27.03.2014, 21:08:38 »
Ладно, предлагаю завершить дискуссию, ибо по хорошему эта тема мало к ней уже относится.

Все же это по теме :)
Сделал свой шаблон
Стоит условие
Код
      <?php if($this->countModules('right')) : ?>
      <div class="content">
        <jdoc:include type="message" />
        <jdoc:include type="component" />
      </div>
      <?php else: ?>
      <div class="content-full">
        <jdoc:include type="message" />
        <jdoc:include type="component" />
      </div>
      <?php endif ?>

Тоесть если есть модуль right то выводим content, если нет его то выводим content-full

Условие у Right
Код
    <?php if ( $option == 'com_jshopping' && $controller != 'product' ) : ?>
    <?php if($this->countModules('right')) : ?>
    <aside class="right-sidebar">
      <jdoc:include type="modules" name="right"  style="xhtml" />
    </aside>
    <?php endif ?>
    <?php endif; ?>

Тоесть не выводим в карточке товара.
В итоге в карточке не выводит, и первое условие не срабатывает, отображается content. Не понимает что нет модуля. Что не так прописал?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #206 : 27.03.2014, 21:50:12 »
Все же это по теме

по теме тут только

Код: php
<?php if ( $option == 'com_jshopping' && $controller != 'product' ) : ?>

Цитировать
Что не так прописал?

У меня вот тоже есть $this->someMethod(), и почему то 0 возвращает, а хотелось бы чтобы 1. Что не так прописал?

Понимаете, о чем я? Это никак не касается ЖШ. Кроме первого условия, проблем с которым у вас нет
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

nevigen

  • Moderator
  • 10436
  • 863 / 25
  • http://n*****n.com
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #207 : 27.03.2014, 22:14:09 »
условие есть ? прописаны и доведены до ведома участников форума?
их работа на конкретных шаблонах это уже парафия каждого владельца сайта.
почему выводятся не выводятся блоки шаблона это не полемика данного раздела.

раздел УСЛОВИЯ (!) вывода модулей.
Вы считает что условие которое Вам любезно предоставили на работает ?
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

McCafferty

  • Захожу иногда
  • 77
  • 3 / 0
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #208 : 28.03.2014, 09:36:30 »
Это никак не касается ЖШ. Кроме первого условия, проблем с которым у вас нет
условие есть ? прописаны и доведены до ведома участников форума?
Вы считает что условие которое Вам любезно предоставили на работает ?

Предлагаете открыть третью тему где будет обсуждаться совместное использование условий Joomla и JShop? Я же не прошу Вас написать все за меня, хотя бы на своем языке сказали возможную причину или намекнули и давно закончили дискуссию.

п.с. за тему спасибо.
*

nevigen

  • Moderator
  • 10436
  • 863 / 25
  • http://n*****n.com
Re: [FAQ] Условия вывода модулей в JoomShopping
« Ответ #209 : 28.03.2014, 10:01:46 »
объясните мне лично.
есть условие которое либо работает либо нет.
у вас оно работает ?
если нет, то ок причину обсуждаем..
если да то,
почему люди которые тут обсуждают JoomShopping, должны обсуждать Ваши проблемы с Вашим шаблоном, что он как то не так реагирует на что-то.
может дело во фреймворке, может в последовательности отработки условий и т.д.

обсуждаются условия вывода.
если они аданы и работают, то остальное АБСОЛЮТНО не относится к данной теме.
а если вопрос шаблона Joomla, то он вообще не относится даже к разделу.

принцип деления по темам это не ограничение общающихся, это порядок и систематизация, а также обеспечение общение непосредственно по вопросу а не все обо всем.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Плагин - Вывод значения поля из таблицы продуктов в корзине JoomShopping

Автор draff

Ответов: 3
Просмотров: 812
Последний ответ 26.02.2024, 07:00:01
от kit2m2
Плагин - Товар на складе или Товар под заказ для JoomShopping [Скачать]

Автор kit2m2

Ответов: 58
Просмотров: 9284
Последний ответ 18.05.2023, 12:59:00
от Akeksandr
[Решено] Комплект товаров JoomShopping - конструктор

Автор vgromov

Ответов: 96
Просмотров: 28207
Последний ответ 14.12.2022, 15:21:24
от kit2m2
Функционал сравнение товаров в JoomShopping

Автор falur

Ответов: 53
Просмотров: 13476
Последний ответ 22.08.2022, 09:54:16
от kit2m2
[скачать] Выбор отделения Новой Почты для JoomShopping 4+

Автор v42bis

Ответов: 18
Просмотров: 3653
Последний ответ 06.07.2022, 07:17:06
от denxio