Новости Joomla

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями 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 Гость просматривают эту тему.
  • 9 Ответов
  • 1691 Просмотров
*

boyboy61

  • Новичок
  • 5
  • 0 / 0
у меня Joomla 3.2 и сите мультиязычен;
ест компонент com_smile.
когда делаю
Route::_('index.php?lang=am&option=com_smile&view=home'); => то /am/component/smile/home
Route::_('index.php?lang=am&option=com_smile&view=contact'); => то /am/component/smile/contact

у меня есть пунк мену там вес работает идет home,contacts .......
index.php?lang=am&option=com_smile&view=home alias home
index.php?lang=am&option=com_smile&view=contact alias contacts
почему Route::_ не может преобразовать правильно.
или как сделать чтобы
Route::_('index.php?lang=am&option=com_smile&view=home'); => home ;
Route::_('index.php?lang=am&option=com_smile&view=contact'); => contacts;
« Последнее редактирование: 26.11.2013, 19:59:46 от b2z »
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Не хочет работать JRoute::_('...');
« Ответ #1 : 25.11.2013, 22:57:24 »
Наверно это com_smile так работает - шутит над ссылками переставляет букаффки в сообщении.
*

boyboy61

  • Новичок
  • 5
  • 0 / 0
Re: Не хочет работать JRoute::_('...');
« Ответ #2 : 25.11.2013, 22:59:47 »
Наверно это com_smile так работает - шутит над ссылками переставляет букаффки в сообщении.

а что значит "Наверно это com_smile так работает" ?
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Не хочет работать JRoute::_('...');
« Ответ #3 : 26.11.2013, 01:02:30 »
JRoute::_('index.php?Itemid=123');
где 123 - id пункта меню home
*

boyboy61

  • Новичок
  • 5
  • 0 / 0
Re: Не хочет работать JRoute::_('...');
« Ответ #4 : 26.11.2013, 10:44:01 »
JRoute::_('index.php?Itemid=123');
где 123 - id пункта меню home

ага! спасибо. работает..))
но не то что я хотел.. другие идеи есть?
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Не хочет работать JRoute::_('...');
« Ответ #5 : 26.11.2013, 11:15:12 »
ага! спасибо. работает..))
но не то что я хотел.. другие идеи есть?
Ну так у Вас же все работает? Если Вы хотите сделать роутинг без пункта меню, то скорее всего ротуер надо переписывать.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Не хочет работать JRoute::_('...');
« Ответ #6 : 26.11.2013, 12:56:14 »
ага! спасибо. работает..))
но не то что я хотел.. другие идеи есть?
увы связывание с пунктом меню идет только в двух случаях:
1. вы в текущем пункте меню
2. вы указываете Itemid этого пункта меню!

В принципе id пункта меню можно программно определить простой функцией:
Код: php
function getItemid( $option, $view, $lang = 'am' )
{
$items = JMenu::getInstance( 'site' )->getItems( 'component', $option );
foreach ( $items as $item ) {
if ( $item->query['view'] === $view && $item->query['lang'] === $lang) {
return $item->id;
}
}
}

echo JRoute::_( 'index.php?Itemid=' . getItemid( 'com_smile', 'home' ) );
echo JRoute::_( 'index.php?Itemid=' . getItemid( 'com_smile', 'contact' ) );
*

boyboy61

  • Новичок
  • 5
  • 0 / 0
Re: Не хочет работать JRoute::_('...');
« Ответ #7 : 26.11.2013, 16:21:58 »
так я это понял а щас таков вопрос
Route::_('index.php?lang=am&option=com_exemple&view=home'); => то /am/component/exemple/home
почему?  как убрать component.?
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Не хочет работать JRoute::_('...');
« Ответ #8 : 26.11.2013, 17:44:57 »
Только указать Itemid!
так устроенна Joomla! если компонент не связан с пунктом меню то отобразится /am/component/exemple/home
Вы можете в JRoute::_('index.php?lang=am&option=com_exemple&view=home&Itemid=123'); дописать itemid! не обязательно писать только один Itemid!
Если у вас будет связан с каким то компонентом то лишнее (типа component/exemple/) откинется автоматом!
*

boyboy61

  • Новичок
  • 5
  • 0 / 0
Re: Не хочет работать JRoute::_('...');
« Ответ #9 : 26.11.2013, 18:44:16 »
спасибо большое,
тема закрыта!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Вывод значений из custom fields материала в модуле по имени поля

Автор goga_pgasovav

Ответов: 3
Просмотров: 2583
Последний ответ 30.12.2024, 13:22:11
от goga_pgasovav
[Решено] Получить category description image в index.php шаблона

Автор goga_pgasovav

Ответов: 6
Просмотров: 2241
Последний ответ 12.07.2024, 17:06:14
от goga_pgasovav
Перестала работать почта на всех сайтах

Автор svarg

Ответов: 5
Просмотров: 1411
Последний ответ 23.02.2024, 22:05:51
от Vastriet
[Решено] Перестали работать переходы по меню сайта

Автор AlexP750

Ответов: 12
Просмотров: 2729
Последний ответ 06.02.2024, 12:42:26
от AlexP750
[Решено] Ссылка на домен и текущий шаблон в блоге категории

Автор goga_pgasovav

Ответов: 2
Просмотров: 1255
Последний ответ 06.03.2023, 16:30:23
от goga_pgasovav