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

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

Модуль только на одной странице

 (Прочитано 47424 раз)
0 Пользователей и 1 Гость смотрят эту тему.
jackmc
Захожу иногда
**

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

Сообщений: 10


« : 19.11.2008, 16:34:38 »

У меня на сайте для всех страниц используется один шаблон. Мне необходимо ТОЛЬКО на главной отобразить модуль (mod_custom), на всех же страницах этот модуль не показывать, как это можно сделать?
« Последнее редактирование: 26.10.2009, 21:26:08 от PaLyCH » Записан
SKeeper
Захожу иногда
**

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

Сообщений: 12


« Ответ #1 : 19.11.2008, 17:07:42 »

У меня на сайте для всех страниц используется один шаблон. Мне необходимо ТОЛЬКО на главной отобразить модуль (mod_custom), на всех же страницах этот модуль не показывать, как это можно сделать?

Можно попытаться привязать модуль к пункту меню:
В Менеджере модулей выбираем нужный модуль и в пункте Назначение меню выбрать нужный пункт (в Вашем случае пункт соответствующий главной странице)
Записан
jackmc
Захожу иногда
**

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

Сообщений: 10


« Ответ #2 : 19.11.2008, 18:25:38 »

Можно попытаться привязать модуль к пункту меню:
В Менеджере модулей выбираем нужный модуль и в пункте Назначение меню выбрать нужный пункт (в Вашем случае пункт соответствующий главной странице)

А можно ли как-нибудь сделать через код?
Записан
smart
Администратор
*******

Репутация: +1310/-14
Offline Offline

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


снова дома...


« Ответ #3 : 19.11.2008, 18:33:05 »

Можно, добавьте в шаблон новую область (например frontpage_top):

Код
<?php
$option = JRequest::getCmd('option');
$view = JRequest::getVar('view', 'frontpage');
if ($option == 'com_content' && $view == 'frontpage') {
?>
<jdoc:include type="modules" name="frontpage_top" style="raw" />
<?php
}

Подкорректируйте xml-файл шаблона, добавив в нем эту область в список областей, и затем опубликуйте ваш модуль в этой области.

Либо используйте какую-то из существующих, заключив ее в указанный блок проверок - тогда править xml-файл не придётся.
Записан
Dimchik
Осваиваюсь на форуме
***

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

Сообщений: 34


« Ответ #4 : 02.12.2008, 19:39:12 »

спасибо! помогло
Записан
kavkaz07
Захожу иногда
**

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

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


« Ответ #5 : 08.12.2008, 16:31:26 »

а если нужно чтоб модуль был виден только на главной странице компонента и больше нигде?
Записан
pedrosoft
Давно я тут
****

Репутация: +113/-7
Offline Offline

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



« Ответ #6 : 19.12.2008, 19:02:37 »

какого именно компонента?

для com_content см. код выше от Смарта
Записан
MAzZY
Осваиваюсь на форуме
***

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

Сообщений: 93


« Ответ #7 : 02.01.2009, 20:18:39 »

У меня сходная проблема. Мне нужно, чтобы модуль отображался на страницах статей, но не показывался на страницах самих категорий и разделов. Как такое можно сделать?
И еще вдогонку. Нужно сделать отображение этого модуля на страницах PhocaGallery.
Записан
beliyadm
Профи
********

Репутация: +1588/-63
Offline Offline

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


Севастополь == Россия


« Ответ #8 : 03.01.2009, 22:35:08 »

У меня сходная проблема. Мне нужно, чтобы модуль отображался на страницах статей, но не показывался на страницах самих категорий и разделов. Как такое можно сделать?
Код
if ($view==article) { } else {}
Записан
MAzZY
Осваиваюсь на форуме
***

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

Сообщений: 93


« Ответ #9 : 03.01.2009, 23:16:40 »

Вот спасибо. Действительно помогло.
Правда, я что-то накосячил и у меня теперь модуль отображается в статьях как положено, а на других страницах на его месте просто пустота, хотя не должно быть ничего. Т.е. отведено место под блок (в этом блоке только один модуль), но там пусто. Кстати говоря, когда не было условия, такой ситуации не возникало
Вот код, который я сделал:

Код:
<?php
$option = JRequest::getCmd('option');
$view = JRequest::getVar('view');
if ($option == 'com_content' && $view == 'article') {?>
<!-- BEGIN: RIGHT COLUMN -->
<div id="ja-col2">
<jdoc:include type="modules" name="right_new" style="jarounded" />
</div><br />
<!-- END: RIGHT COLUMN -->
<?php }?>
Сделано из кода правой панели стиля ja_purity.

А как определить параметры для PhocaGallery чтобы можно было составить такое же условие? Где их можно найти?
« Последнее редактирование: 03.01.2009, 23:21:01 от MAzZY » Записан
beliyadm
Профи
********

Репутация: +1588/-63
Offline Offline

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


Севастополь == Россия


« Ответ #10 : 03.01.2009, 23:20:57 »

Правда, я что-то накосячил и у меня теперь модуль отображается в статьях как положено, а на других страницах на его месте просто пустота, хотя не должно быть ничего.
правильно, у тебя условие - если компонент com_content и режим просмотра полный текст статьи - то показать модуль, иначе - пусто.
Аналогичное условие можно применить не только к позиции модуля, но и DIV либо ячейке таблицы, в которую он заключен, тогда не будет пустого куска экрана
Проверяй, что у тебя является родителем для <div id="ja-col2">
Записан
MAzZY
Осваиваюсь на форуме
***

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

Сообщений: 93


« Ответ #11 : 03.01.2009, 23:26:30 »

С условием
Код:
if ($view == 'article')
получается точно также.
Или я что-то не так понял...
Записан
MAzZY
Осваиваюсь на форуме
***

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

Сообщений: 93


« Ответ #12 : 03.01.2009, 23:28:52 »

Проверяй, что у тебя является родителем для <div id="ja-col2">
Вот такая там конструкция:
Код:
<div id="ja-containerwrap<?php echo $divid; ?>">
<div id="ja-containerwrap2">
<div id="ja-container">
<div id="ja-container2" class="clearfix">

Как к ним применить такое условие?
« Последнее редактирование: 03.01.2009, 23:37:31 от MAzZY » Записан
beliyadm
Профи
********

Репутация: +1588/-63
Offline Offline

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


Севастополь == Россия


« Ответ #13 : 03.01.2009, 23:40:41 »

готового решения не дам, ибо шаблон на дивах, с ними невозможно не видя кода CSS дать подобное решение (какой блок можно отключить), если приложите и файл стилей - может быть кто нибудь и даст готовое решение
Записан
MAzZY
Осваиваюсь на форуме
***

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

Сообщений: 93


« Ответ #14 : 03.01.2009, 23:47:14 »

Код:
#ja-containerwrap {
background: url(../images/cw-bg1.gif) repeat-y 50% 0;
}

#ja-containerwrap2 {
background: url(../images/cw-bg2.gif) no-repeat 50% 0;
}

#ja-container {
background: url(../images/c-bg1.gif) repeat-y 18% 0;
}

#ja-container2 {
padding: 20px 0;
background: url(../images/c-bg2.gif) no-repeat 18% 0;
}

#ja-col2 {
float: right;
width: 20%;
overflow: hidden;
}

Код:
/* Clearfix */
.clearfix:after {
clear: both;
display: block;
content: ".";
height: 0;
visibility: hidden;
}

* html > body .clearfix {
width: 100%;
display: block;
}

* html .clearfix {
height: 1%;
}
Вот все задействованные строки, если я ничего не упустил.

Может есть какое-то более простое решение, какое-то другое условие?
« Последнее редактирование: 03.01.2009, 23:50:18 от MAzZY » Записан
MAzZY
Осваиваюсь на форуме
***

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

Сообщений: 93


« Ответ #15 : 03.01.2009, 23:58:11 »

А может проблема с отображением пустого поля возникает из-за того, что модуль включен для всех страниц?
Записан
MAzZY
Осваиваюсь на форуме
***

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

Сообщений: 93


« Ответ #16 : 05.01.2009, 19:00:13 »

Решил проблему методом костыля: т.к. этот блок является копией правой колонки, то я просто вставил в неё другой модуль и теперь все пустые места закрыты.
Но все равно, хотелось бы решить проблему грамотно. Подскажите, как это все исправить?
Записан
ZHart
Joostina
*****

Репутация: +53/-2
Offline Offline

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



« Ответ #17 : 10.11.2009, 19:46:14 »

У меня сходная проблема. Мне нужно, чтобы модуль отображался на страницах статей, но не показывался на страницах самих категорий и разделов. Как такое можно сделать?

А можно сделать что-то подобное без вмешательства в код модуля?
Сложность в том, что нужно один модуль отображать только на главной странице, другой (такого же типа) - на всех страницах сайта, третий (тоже того же типа) - только на страницах статей (когда статьи отображаются в full mode).
Речь идет о модуле mod_jatabs, который шел в комплекте с шаблоном от JoomlArt (лицензионным).
Как такое проще всего реализовать?
Записан
Страниц: [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