Новости Joomla

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

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

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

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

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

Читать статью на Хабре.

@joomlafeed

🏆 Открыто голосование за 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 Ответов
  • 4895 Просмотров
*

IchBrain

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Уважаемые, меня интересует авто значение "псевдонима" при создании материала если заголовок на русском.

Если заголовок написан латиницей, то и псевдоним будет такойже, допустим заголовок "My site", то псевдоним будет "my-site". А вот если заголовок на русском "Мой сайт", то псевдоним равен дате создания материала. Нельзя ли сделать так чтобы псевдоним автоматически был "moi-sait" ну или чтото на подобие? Или только в ручную?  ;)
*

AlterEgo

  • Захожу иногда
  • 170
  • 71 / 5
Можно поставить плагин для транслитерации псевдонимов:_http://yurivolkov.com/Joomla/yvTransliterate/index_ru.html
Или внести изменения вручную в файле www.mysite.ru\libraries\joomla\database\table\content.php.
В строке 125 заменить код вставки даты в псевдоним(alias):
Код
if(trim(str_replace('-','',$this->alias)) == '') {
   $datenow =& JFactory::getDate();
   $this->alias = $datenow->toFormat("%Y-%m-%d-%H-%M-%S");
}
На свою функцию транслитерации. Чисто для примера:
Код
if(trim(str_replace('-','',$this->alias)) == '') {
  $tr = array(
   "А"=>"a","Б"=>"b","В"=>"v","Г"=>"g",
   "Д"=>"d","Е"=>"e","Ж"=>"j","З"=>"z","И"=>"i",
   "Й"=>"y","К"=>"k","Л"=>"l","М"=>"m","Н"=>"n",
   "О"=>"o","П"=>"p","Р"=>"r","С"=>"s","Т"=>"t",
   "У"=>"u","Ф"=>"f","Х"=>"h","Ц"=>"ts","Ч"=>"ch",
   "Ш"=>"sh","Щ"=>"sch","Ъ"=>"","Ы"=>"yi","Ь"=>"",
   "Э"=>"e","Ю"=>"yu","Я"=>"ya","а"=>"a","б"=>"b",
   "в"=>"v","г"=>"g","д"=>"d","е"=>"e","ж"=>"j",
   "з"=>"z","и"=>"i","й"=>"y","к"=>"k","л"=>"l",
   "м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r",
   "с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"h",
   "ц"=>"ts","ч"=>"ch","ш"=>"sh","щ"=>"sch","ъ"=>"y",
   "ы"=>"yi","ь"=>"","э"=>"e","ю"=>"yu","я"=>"ya",
   " "=>"-","!"=>"","?"=>"",","=>"","."=>"",
   );
   $this->title = trim($this->title," ");
   $this->alias = strtr($this->title,$tr);
}
Затем сохранить файл в кодировке UTF-8 without BOM.
*

IchBrain

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
 :D СПАСИБО!!))
*

IchBrain

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
 *DRINK* спасибо, поюзаем
*

Sulpher

  • Живу я здесь
  • 2136
  • 402 / 16
  • Шаблоны и расширения Joomla
Я также склонен использовать продукт от oppo, поскольку вижу его более простым и удобным. К тому же офомрленным как один плагин.
*

Marilyn Manson

  • Осваиваюсь на форуме
  • 36
  • 0 / 0
Можно поставить плагин для транслитерации псевдонимов:_http://yurivolkov.com/Joomla/yvTransliterate/index_ru.html
Или внести изменения вручную в файле www.mysite.ru\libraries\joomla\database\table\content.php.
В строке 125 заменить код вставки даты в псевдоним(alias):
Код
if(trim(str_replace('-','',$this->alias)) == '') {
   $datenow =& JFactory::getDate();
   $this->alias = $datenow->toFormat("%Y-%m-%d-%H-%M-%S");
}
На свою функцию транслитерации. Чисто для примера:
Код
if(trim(str_replace('-','',$this->alias)) == '') {
  $tr = array(
   "А"=>"a","Б"=>"b","В"=>"v","Г"=>"g",
   "Д"=>"d","Е"=>"e","Ж"=>"j","З"=>"z","И"=>"i",
   "Й"=>"y","К"=>"k","Л"=>"l","М"=>"m","Н"=>"n",
   "О"=>"o","П"=>"p","Р"=>"r","С"=>"s","Т"=>"t",
   "У"=>"u","Ф"=>"f","Х"=>"h","Ц"=>"ts","Ч"=>"ch",
   "Ш"=>"sh","Щ"=>"sch","Ъ"=>"","Ы"=>"yi","Ь"=>"",
   "Э"=>"e","Ю"=>"yu","Я"=>"ya","а"=>"a","б"=>"b",
   "в"=>"v","г"=>"g","д"=>"d","е"=>"e","ж"=>"j",
   "з"=>"z","и"=>"i","й"=>"y","к"=>"k","л"=>"l",
   "м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r",
   "с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"h",
   "ц"=>"ts","ч"=>"ch","ш"=>"sh","щ"=>"sch","ъ"=>"y",
   "ы"=>"yi","ь"=>"","э"=>"e","ю"=>"yu","я"=>"ya",
   " "=>"-","!"=>"","?"=>"",","=>"","."=>"",
   );
   $this->title = trim($this->title," ");
   $this->alias = strtr($this->title,$tr);
}
Затем сохранить файл в кодировке UTF-8 without BOM.

Все отлично пашет, но есть несколько вопросов:

1) Как быть, если в заголовке есть английский символ? В текущей реализации - транслитерация не пройдет :(
2) Как сделать, чтобы между словами ставился только 1 дефис (даже если пробелов много)?
3) Как сделать, чтобы если уже есть дефис в названии еще 1 не проставлялся?
*

akondr

  • Захожу иногда
  • 112
  • 0 / 0
Установил плагин obMassSecCat - Mass Sections and Categories
Заменил в файлах content, category все по образцу, в итоге все равно при массовом добавлении категорий выставляется дата и время, и кеш уже почистил. Не пойму, где собака зарыта?
*

Alex69z

  • Осваиваюсь на форуме
  • 10
  • 1 / 0
AlterEgo - спасибо помогло!
А вообще странно на сайте 1.5.22 - со старым sef(2.2.4.955) всё работало на ура - а тут поставил на 1.5.25 новый sef(2.4.5.1028)  и не мог наладить (всё время псевдоним статьи вылазил, который датой создания формируется) хотя настройки один в один что на другом(старом) сайте и в самой жумле что в SEF - пока на этот пост не напоролся...вообще не понимал от куда ноги растут....
*

Yamax

  • Захожу иногда
  • 84
  • 2 / 0
я уже и забыл что такое псевдонимы :))) использую sh404
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

как изменить заголовок страницы во вкладке браузера?

Автор Руслан71

Ответов: 4
Просмотров: 3928
Последний ответ 10.08.2016, 10:51:39
от Руслан71
Модуль заголовок

Автор theboris

Ответов: 3
Просмотров: 1832
Последний ответ 05.06.2014, 19:24:06
от theboris
Заголовок материала

Автор Stall

Ответов: 0
Просмотров: 1145
Последний ответ 12.02.2013, 07:43:33
от Stall
Как сделать что бы заголовок статьи не был ссылкой?

Автор zxzLEXzxz

Ответов: 7
Просмотров: 2720
Последний ответ 04.01.2013, 16:45:53
от zxzLEXzxz
Заголовок

Автор SKA240486

Ответов: 0
Просмотров: 1108
Последний ответ 20.12.2012, 18:03:23
от SKA240486