Новости Joomla

Вышли релизы Joomla 6.0.3 и Joomla 5.4.3

Релиз Joomla 6.0.3 и Joomla 5.4.3

Проект Joomla рад сообщить о выпуске Joomla 6.0.3 и Joomla 5.4.3. Это релиз исправлений ошибок и улучшений для серии Joomla 6.0 и Joomla 5.4.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

В процессе работы с Joomla бывает необходимо работать с пользовательским интерфейсом более тонко, чем обычно. Все формы Joomla состоят из стандартных полей, содержанием, стилем отображения, состоянием (включено/выключено, доступно для редактирования или нет и т.д.) можно управлять с помощью плагинов. Да и для нестандартных проектов хорошей практикой является создание одного системного или нескольких плагинов групп "под проект", в которых храниться весь "нестандарт".

В этой статье описаны все триггеры, которые вызываются через Event Dispatcher из administrator/components/com_fields/src/Helper/FieldsHelper.php, с привязкой к жизненному циклу (порядку этапов работы запроса), аргументам, изменяемым данным и дальнейшему распространению по Joomla. Это поможет вам работать с Joomla свободнее и не опасаясь при этом потерять изменения при очередном обновлении движка.

Подходы, описанные в статье, полезны в тех случаях, когда вы работаете с данными в com_fields - механизме создания и редактирования пользовательских полей ядра Joomla и при использовании FieldsHelper. Многие сторонние компоненты не используют эту возможность, поэтому данная статья будет полезна лишь частично.

🏆 Открыто голосование за Joomla в премии CMS Critic People’s Choice Awards 2025

🏆 Открыто голосование за Joomla в  премии CMS Critic People’s Choice Awards 2025

🗓 Голосование продлится до 27 февраля 2026 года.

👩‍💻 Проголосовать! 👩‍💻

Номинации, в которых можно проголосовать за Joomla:
⭐️ Best Free CMS
⭐️ Best Open Source CMS
⭐️ Best Enterprise CMS

Также в номинации Best e-Commerce Solution участвуют компоненты интернет-магазинов для Joomla:
⭐️ HikaShop
⭐️ Virtuemart

В номинации Best Website Builder оказались:
⭐️ YooTheme
⭐️ SP Page Builder

Что такое CMS Critic Awards?
С 2012 года премия CMS Critic Awards занимает особое место в сообществе систем управления контентом (CMS). Это единственный в своем роде сайт, который составляет рейтинг системы управления контентом и связанных с ними решений на рынке — от малого до крупного и подчеркивает их инновации и услуги.

Каждый год награда CMS Critic Awards присуждается одному победителю в различных отраслевых категориях, таких как: «Лучшая облачная CMS», «Лучший DXP», «Лучшая Headless CMS и других. Затем результаты оглашаются через СМИ вместе с выбором редакции CMS Critic.
В этом году премия вернулась к своим традициям и только TOP-5 движков по количеству номинаций попали в 2-й этап - голосование.

@joomlafeed

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

jackmc

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

SKeeper

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Re: Модуль только на одной странице
« Ответ #1 : 19.11.2008, 16:07:42 »
У меня на сайте для всех страниц используется один шаблон. Мне необходимо ТОЛЬКО на главной отобразить модуль (mod_custom), на всех же страницах этот модуль не показывать, как это можно сделать?

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

jackmc

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Модуль только на одной странице
« Ответ #2 : 19.11.2008, 17:25:38 »
Можно попытаться привязать модуль к пункту меню:
В Менеджере модулей выбираем нужный модуль и в пункте Назначение меню выбрать нужный пункт (в Вашем случае пункт соответствующий главной странице)

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

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: Модуль только на одной странице
« Ответ #3 : 19.11.2008, 17:33:05 »
Можно, добавьте в шаблон новую область (например frontpage_top):

Код: php
<?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

  • Осваиваюсь на форуме
  • 34
  • 6 / 0
Re: Модуль только на одной странице
« Ответ #4 : 02.12.2008, 18:39:12 »
спасибо! помогло
*

kavkaz07

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
Re: Модуль только на одной странице
« Ответ #5 : 08.12.2008, 15:31:26 »
а если нужно чтоб модуль был виден только на главной странице компонента и больше нигде?
*

pedrosoft

  • Захожу иногда
  • 367
  • 113 / 7
Re: Модуль только на одной странице
« Ответ #6 : 19.12.2008, 18:02:37 »
какого именно компонента?

для com_content см. код выше от Смарта
Интернет Хостинг Центр: отличные цены, лучшее качество, расположение в дата-центре «Оверсан-Меркурий»
*

MAzZY

  • Захожу иногда
  • 93
  • 5 / 0
Re: Модуль только на одной странице
« Ответ #7 : 02.01.2009, 19:18:39 »
У меня сходная проблема. Мне нужно, чтобы модуль отображался на страницах статей, но не показывался на страницах самих категорий и разделов. Как такое можно сделать?
И еще вдогонку. Нужно сделать отображение этого модуля на страницах PhocaGallery.
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Модуль только на одной странице
« Ответ #8 : 03.01.2009, 21:35:08 »
У меня сходная проблема. Мне нужно, чтобы модуль отображался на страницах статей, но не показывался на страницах самих категорий и разделов. Как такое можно сделать?
Код: php
if ($view==article) { } else {}
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

MAzZY

  • Захожу иногда
  • 93
  • 5 / 0
Re: Модуль только на одной странице
« Ответ #9 : 03.01.2009, 22: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, 22:21:01 от MAzZY »
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Модуль только на одной странице
« Ответ #10 : 03.01.2009, 22:20:57 »
Правда, я что-то накосячил и у меня теперь модуль отображается в статьях как положено, а на других страницах на его месте просто пустота, хотя не должно быть ничего.
правильно, у тебя условие - если компонент com_content и режим просмотра полный текст статьи - то показать модуль, иначе - пусто.
Аналогичное условие можно применить не только к позиции модуля, но и DIV либо ячейке таблицы, в которую он заключен, тогда не будет пустого куска экрана
Проверяй, что у тебя является родителем для <div id="ja-col2">
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

MAzZY

  • Захожу иногда
  • 93
  • 5 / 0
Re: Модуль только на одной странице
« Ответ #11 : 03.01.2009, 22:26:30 »
С условием
Код
if ($view == 'article')
получается точно также.
Или я что-то не так понял...
*

MAzZY

  • Захожу иногда
  • 93
  • 5 / 0
Re: Модуль только на одной странице
« Ответ #12 : 03.01.2009, 22: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, 22:37:31 от MAzZY »
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Модуль только на одной странице
« Ответ #13 : 03.01.2009, 22:40:41 »
готового решения не дам, ибо шаблон на дивах, с ними невозможно не видя кода CSS дать подобное решение (какой блок можно отключить), если приложите и файл стилей - может быть кто нибудь и даст готовое решение
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

MAzZY

  • Захожу иногда
  • 93
  • 5 / 0
Re: Модуль только на одной странице
« Ответ #14 : 03.01.2009, 22: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, 22:50:18 от MAzZY »
*

MAzZY

  • Захожу иногда
  • 93
  • 5 / 0
Re: Модуль только на одной странице
« Ответ #15 : 03.01.2009, 22:58:11 »
А может проблема с отображением пустого поля возникает из-за того, что модуль включен для всех страниц?
*

MAzZY

  • Захожу иногда
  • 93
  • 5 / 0
Re: Модуль только на одной странице
« Ответ #16 : 05.01.2009, 18:00:13 »
Решил проблему методом костыля: т.к. этот блок является копией правой колонки, то я просто вставил в неё другой модуль и теперь все пустые места закрыты.
Но все равно, хотелось бы решить проблему грамотно. Подскажите, как это все исправить?
*

ZHart

  • Захожу иногда
  • 324
  • 53 / 2
Re: Модуль только на одной странице
« Ответ #17 : 10.11.2009, 18:46:14 »
У меня сходная проблема. Мне нужно, чтобы модуль отображался на страницах статей, но не показывался на страницах самих категорий и разделов. Как такое можно сделать?

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

Модуль Материалы той же категории, что и открытая статья

Автор genius

Ответов: 12
Просмотров: 2910
Последний ответ 15.11.2017, 13:14:03
от genius
[HOW-TO]Начало статьи - видно всем, продолжение - только зарегистрированным.

Автор Wild Tiger

Ответов: 6
Просмотров: 10144
Последний ответ 14.11.2011, 17:56:04
от Wild Tiger
Title на странице результатов поиска

Автор delphine

Ответов: 3
Просмотров: 26839
Последний ответ 22.06.2009, 09:46:03
от delphine
Изменение адреса к странице administrator

Автор phaestos

Ответов: 1
Просмотров: 38038
Последний ответ 24.12.2008, 00:24:52
от ChaosDay
Как показать модуль только не зарегистрированным пользователям?

Автор jfsv

Ответов: 1
Просмотров: 29519
Последний ответ 13.11.2008, 14:18:13
от beliyadm