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

kindzudza

  • Новичок
  • 7
  • 0 / 0
Воспользовался поиском и нашел решение что бы убрать показ модуля при просмотре материала установленного компонента. Но задача усложняется тем что необходимо показывать модуль в категории и НЕ показывать в подкатегории и материале. И вот этот код показывает модуль в подкатегориях, а как сделать что бы в подкатегориях НЕ показывал.
Код
<? $app = JFactory::getApplication();
     $option = $app->input->getCmd('option', '');
     $view = $app->input->getCmd('view','');
     if(!JRequest::getVar('limitstart') && $this->countModules('position-2') && $view != 'showproperty' && $option == 'com_estateagent') : ?>
     <jdoc:include type="modules" name="position-2" style="none" />
     <? endif; ?>
Не SEF ссылка на основную категорию выглядит так:
Код
index.php?option=com_estateagent&view=category&id=2&Itemid=111
Не SEF ссылка на подкатегорию выглядит так:
Код
index.php?option=com_estateagent&view=category&id=17&Itemid=133
Пробовал создавать скрытое меню и делать запрет вывода модуля, но не помогает.
« Последнее редактирование: 23.09.2017, 19:19:21 от kindzudza »
*

NewUsers

  • Завсегдатай
  • 1117
  • 74 / 0
Перед формирование страницы (обычно это функция системного плагина onAfterInitialise, или в представлении  - файл view.html.php)
добавь код

Код: php
<?php $app->get('themeParams')->set('mod-pos2', false); ?>
но, добавляй только там где модуль НЕ НАДО выводить...

потом в файле шаблона
условие на вывод позиции модуля
Код
<?php if($this->params->get('mod-pos2', true)): ?>
   <jdoc:include type="modules" name="position-2" style="none" />
<? endif; ?>

Занимаюсь создание расширений только для Joomla 3.x.x | Доработка и настройка сайтов. Работаю по факту (без всяких предоплат). Оплата только на Яндекс.Деньги
*

kindzudza

  • Новичок
  • 7
  • 0 / 0
Перед формирование страницы (обычно это функция системного плагина onAfterInitialise, или в представлении  - файл view.html.php)
добавь код
Вообще не понял что делать, добавлю что стоит компонент sef404, плагин не нашел, файл view.html.php компонента com_estateagent, нашел. Уточните мои действия? Кроме этого ваш код надо дописать к тому что у меня или можно использовать независимо?

Код который я написал выше я уже использую на сайте, он мне подходит т.к. не выводит модуль на страницах материала компонента и на страницах пагинации в основной категории, но появились подкатегории и модуль выводится в них, это надо устранить, что надо дописать. Код писал не я поэтому я мало что понимаю в нем, если можно поподробней что редактировать и где.
« Последнее редактирование: 23.09.2017, 19:49:43 от kindzudza »
*

Виталик

  • Завсегдатай
  • 1234
  • 130 / 0
*

kindzudza

  • Новичок
  • 7
  • 0 / 0
основная категория только одна?
нет их 5, из них две имеют по десятку подкатегорий с которыми и возникли сложности
« Последнее редактирование: 23.09.2017, 19:55:16 от kindzudza »
*

Виталик

  • Завсегдатай
  • 1234
  • 130 / 0
Код
<?php
$app = JFactory::getApplication();
    $option = $app->input->getCmd('option', '');
    $view = $app->input->getCmd('view','');
    if(!JRequest::getVar('limitstart') && $this->countModules('position-2') && $view != 'showproperty' && $option == 'com_estateagent' && in_array(JRequest::getInt('id', 0), array(1,2,3,4,5))) : ?>
    <jdoc:include type="modules" name="position-2" style="none" />
    <? endif; ?>

вместо 1,2,3,4,5 вставьте id категорий в которых надо показывать
*

kindzudza

  • Новичок
  • 7
  • 0 / 0
вместо 1,2,3,4,5 вставьте id категорий в которых надо показывать
С данным кодом вообще не выводится модуль нигде, исчез и все. Добавлял так:
Код
<? $app = JFactory::getApplication();
$option = $app->input->getCmd('option', '');
$view = $app->input->getCmd('view','');
if(!JRequest::getVar('limitstart') && $this->countModules('position-2') && $view != 'showproperty' && $option == 'com_estateagent' && in_array(JRequest::getInt('id', 0), array(1,2,3,4,5,6))) : ?>
<jdoc:include type="modules" name="position-2" style="none" />
<? endif; ?>
Как я понял одно и то же id отвечает и за основную категорию и за подкатегории, но основные категории идут от 1 до 10 id т.к. создавались первыми, и подкатегории  соответственно имеют id выше.

А вот так получилось
Код
<? $app = JFactory::getApplication();
$option = $app->input->getCmd('option', '');
$view = $app->input->getCmd('view','');
if(!JRequest::getVar('limitstart') && $this->countModules('position-2') && $view != 'showproperty' && $option == 'com_estateagent' && in_array(JRequest::getInt('id', 7), array(1,2,3,4,5))) : ?>
<jdoc:include type="modules" name="position-2" style="none" />
<? endif; ?>
Поставил обработку массива с 7, а не с 0 и получил что в основных категориях показывает, а во вложенных нет, или так и задумывалось?
« Последнее редактирование: 23.09.2017, 21:06:07 от kindzudza »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Внесение изменений в код выводимого модуля

Автор Atlantis114

Ответов: 9
Просмотров: 179
Последний ответ 26.08.2018, 15:04:55
от Atlantis114
Вывести имя автора подкатегории

Автор VadimA

Ответов: 10
Просмотров: 127
Последний ответ 24.08.2018, 12:44:05
от VadimA
Ошибки на сайте при подключении модуля с формой обратной связи

Автор Dionis0.618

Ответов: 7
Просмотров: 221
Последний ответ 10.08.2018, 15:54:24
от fireman
Проблема отображения модуля на страницах + 3.8 роутер

Автор warrangie

Ответов: 1
Просмотров: 124
Последний ответ 11.07.2018, 11:53:16
от NewUsers
Не отображается перевод кнопок модуля входа

Автор nokinfinity

Ответов: 0
Просмотров: 158
Последний ответ 08.07.2018, 22:33:27
от nokinfinity