Новости 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 Гость просматривают эту тему.
  • 13 Ответов
  • 3075 Просмотров
*

big-z

  • Осваиваюсь на форуме
  • 22
  • 1 / 0
Писал в другой теме и не получив отклика решил открыть новую тему.
Перевёл все почти кроме ajaxcity.
Falang не смог натравить.
Пришла идея добавить в базу три новые таблицы country_en region_en и city_en со странами и городами на английском.
Теперь как я понимаю нужно задать условие по языку, чтоб если английский язык страницы лезть в  английскую таблицу а при русском языке соответственно в русскую.
Правильно ли я понял условие по языку это
Код
<?php
switch ($doc ->getlanguage())
{   case 'ru-ru' :обращение к русской таблице;
   break;
   case 'en-gb' :обращение к английской таблице;
   break;
   default      : обращение к русской таблице;
   break;
}?>

И искать обращение к таблицам нужно в файлике plug.php по адрессу ...\images\com_adsmanager\plugins\ajaxcity\
Если может кто подскажите как правильно реализовать это если возможно.
*

big-z

  • Осваиваюсь на форуме
  • 22
  • 1 / 0
Товарищи программисты :D !
Завязываем тихонечко просматривать тему!
Высказываем мысли
*

Alex89

  • Давно я тут
  • 555
  • 198 / 1
  • Joomlaman :)
правильнее было бы использовать новые поля в существующих таблицах, чем создавать новые таблицы, и если языка всего 2, то условие лучше сделать "ифом", а не "кейсом"
Увеличить посещаемость сайта помогут здесь - http://tinyurl.com/kpaprwy
Если помог, ткните "крестик" в репу!
*

big-z

  • Осваиваюсь на форуме
  • 22
  • 1 / 0
В общем сделал топорно но работает.
Создал 3 новые таблицы -city_en, country_en и region_en.
И используя
Код
switch ($_GET['lang']):
case 'ru':
case 'en':

Только файлик теперь удлинился вдвое
Как разберусь чтоб файлик сюда прикрепить то прикреплю.
Если есть идеи как сделать проще и короче высказывайтесь!
« Последнее редактирование: 20.03.2013, 22:07:03 от big-z »
*

big-z

  • Осваиваюсь на форуме
  • 22
  • 1 / 0
« Последнее редактирование: 20.03.2013, 22:05:01 от big-z »
*

Grendy

  • Захожу иногда
  • 247
  • 26 / 0
Создал 3 новые таблицы -city_en, country_en и region_en.
И используя
Код
switch ($_GET['lang']):
case 'ru':
case 'en':

Если есть идеи как сделать проще и короче высказывайтесь!


Теперь как я понимаю нужно задать условие по языку, чтоб если английский язык страницы лезть в  английскую таблицу а при русском языке соответственно в русскую.
Код
<?php
switch ($doc ->getlanguage())
{   case 'ru-ru' :обращение к русской таблице;
   break;
   case 'en-gb' :обращение к английской таблице;
   break;
   default      : обращение к русской таблице;
   break;
}?>

Вместо switch, как уже было сказано, лучше использовать проверку условий. То есть, вместо кода

Код
switch ($_GET['lang']):
case 'ru':
case 'en':

лучше использовать

Код
if ($_GET['lang'] == 'en') {
код для работы с английской версией
} else {
код для работы с русской версией
}

Такой код позволит работать с английской версией в том случае, если выбран английский язык, а во всех остальных случаях будет отображать содержимое "русской" таблицы. Плюс, операторы if {} else {} работают гораздо быстрее, чем switch, да и использование switch для двух значений - не тот случай, для которых он был разработан.

Ни разу не пользовался таким зловещим творением как Ajaxcity, а потому просто не знаю, какие запросы вы делаете и какие коды обрабатываете, но полагаю, оптимизировать ваши наработки можно путём записи в переменную значения языка и потом простой подстановкой значения в запрос к базе данных. В результате код увеличится всего лишь на две строчки, а не "удлинится вдвое".

Выложите файл на narod.ru - быстрее найдёте отклик и предложения. Не все могут скачивать с deposit files.
Плюс в репутацию больше говорит о благодарности, чем слово "Спасибо" в теме, которую повторно, возможно, никогда уже не посетишь.
*

big-z

  • Осваиваюсь на форуме
  • 22
  • 1 / 0
« Последнее редактирование: 20.03.2013, 23:41:47 от big-z »
*

big-z

  • Осваиваюсь на форуме
  • 22
  • 1 / 0
Даааа. Товарищи либо никто не использует мультиязычность, либо все как я увидев содержимое plug.php впадают в ступор.
*

Alex89

  • Давно я тут
  • 555
  • 198 / 1
  • Joomlaman :)
воть, пробуйте! не проверял, если что пишите сюда

[вложение удалено Администратором]
« Последнее редактирование: 26.03.2013, 17:13:42 от Alex89 »
Увеличить посещаемость сайта помогут здесь - http://tinyurl.com/kpaprwy
Если помог, ткните "крестик" в репу!
*

big-z

  • Осваиваюсь на форуме
  • 22
  • 1 / 0
Спасибо Alex сегодня попробую, потом отпишусь.
*

big-z

  • Осваиваюсь на форуме
  • 22
  • 1 / 0
Пишет ошибку:

Warning: Invalid argument supplied for foreach() in ...\www\images\com_adsmanager\plugins\ajaxcity\plug.php on line 170

Warning: Invalid argument supplied for foreach() in ....\www\images\com_adsmanager\plugins\ajaxcity\plug.php on line 406


И при этом не даёт выбрать даже страну
*

Alex89

  • Давно я тут
  • 555
  • 198 / 1
  • Joomlaman :)
перезалил, пробуйте ещё разок
Увеличить посещаемость сайта помогут здесь - http://tinyurl.com/kpaprwy
Если помог, ткните "крестик" в репу!
*

big-z

  • Осваиваюсь на форуме
  • 22
  • 1 / 0
Видит страну из английской таблицы, видит список регионов этой выбранной страны из англ. таблицы но при выборе региона виснет.
*

Alex89

  • Давно я тут
  • 555
  • 198 / 1
  • Joomlaman :)
Увеличить посещаемость сайта помогут здесь - http://tinyurl.com/kpaprwy
Если помог, ткните "крестик" в репу!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не могу найти где заполнять города

Автор THE KILLERS

Ответов: 2
Просмотров: 3172
Последний ответ 25.11.2021, 13:38:52
от THE KILLERS
Как добавить в полном объявлении к заголовку название региона (города)?

Автор kanevlife

Ответов: 1
Просмотров: 1462
Последний ответ 10.08.2016, 12:29:11
от kanevlife
AdsManager 3.1.2 города

Автор kingxnight

Ответов: 5
Просмотров: 1750
Последний ответ 31.10.2015, 14:49:20
от voras
Ошибка после установки ajaxcity

Автор Genya.petrova

Ответов: 0
Просмотров: 1006
Последний ответ 07.07.2015, 01:01:56
от Genya.petrova
Прошу помощи в настройке модуля mod_adsmanager_table (вывод последних или случайных объявлений)

Автор Vasilij30

Ответов: 21
Просмотров: 2492
Последний ответ 05.10.2014, 01:31:53
от zvi