Новости Joomla

Свои типы полей в Joomla.Это большая тема, о которой можно говорить очень много

Свои типы полей в Joomla.Это большая тема, о которой можно говорить очень много

👩‍💻 Свои типы полей в Joomla.Это большая тема, о которой можно говорить очень много. Самое главное, что возможности применения ограничиваются только вашей больной фантазией. Вы строите интерфейс своего модуля или плагина и вам нужно подтянуть данные из сторонней системы (список чего-нибудь по какому-нибудь API), чтобы сохранить выбранный id в Joomla. Или сделать какую-то проверку и в зависимости от неё показать то или иное сообщение пользователю. Для этого подойдут свои пользовательские типы полей. Интерфейс Joomla по большей части описан в XML-файлах. У каждого из них свои параметры. Некоторые не описаны в документации (manual.joomla.org), поэтому самым любопытным будет полезно заглянуть в собственно файлы фреймворка по пути

libraries/src/Form/FormField.php, а так же в
libraries/src/Form/Fields. У каждого класса поля перечислены его специфические свойства, которые можно описывать в XML. А в своём типе поля вы можете устанавливать эти значения программно. В моём модуле WT Quick links под капотом происходят изменения. Теперь для работы (в админке) ему нужен вспомогательный плагин. А в самом модуле нам бы проверить, а не выключен ли он? В Joomla есть тип поля Note - заметка. Его можно использовать для вывода примечаний.

<field type="note"     name="your_note_for_user"     label="Заголовок примечания"     title="Альтернативный способ для заголовка"     description="Текст примечания"     class="col-12 alert alert-info"     heading="h1"     close="true"/>
heading - указывать уровень заголовка.
close - позволяет закрыть это примечание. В классе поля
libraries/src/Form/Field/NoteField.php описана логика вывода. И в принципе оно нам подходит для нашей задачи. Но оно будет выводить сообщение всегда, а нам нужно только тогда, когда плагин отключён.Поэтому берём и создаём свой класс поля, который мы унаследуем от
NoteField. Это значит, что у нас в руках будет весь инструментарий стандартного поля
Note + то, что мы сами добавим. В XML-манифест добавляем наше поле
<field type="systempluginstatus"      name="systempluginstatus"     addfieldprefix="Joomla\Module\Wtquicklinks\Site\Fields"/>
-
type - имя файла и класса,-
addfieldprefix - указываем namespace к нашему классу, может быть любой нам нужный-
name - нельзя полю без имени...Это означает, что Joomla будет использовать класс поля из файла
modules/mod_wt_quick_links/src/Fields/SystempluginstatusField.php.А в классе поля будет написано следующее:
<?php// namespace для атрибута addfieldprefixnamespace Joomla\Module\Wtquicklinks\Site\Fields;// нельзя напрямую обращаться к этому файлуdefined('_JEXEC') or die;// подключаем родительский класс для переопределенияuse Joomla\CMS\Form\Field\NoteField;use Joomla\CMS\Language\Text;use Joomla\CMS\Plugin\PluginHelper;// имя класса и имя файла точь-в-точьclass SystempluginstatusField extends NoteField{     protected $type = 'Systempluginstatus';     protected function getLabel()          {               // если плагин не включён               if(PluginHelper::isEnabled('system','wtquicklinks')) {                    // меняем свойства родительского класса                    $this->class = 'alert alert-danger w-100';                    $this->element['label'] = '⚠️ А-а-а-а!';                    $this->element['description'] = 'Плагин не включён!!';                    // и просто рендерим его с нашими свойствами                    return parent::getLabel();               }          // А иначе всё хорошо, скрываем поле из виду.          $this->parentclass = 'd-none';          return '';     }}
Просто и удобно. И людям приятно, что о них позаботились и рассказали почему что-то не работает.@webtolkru#joomla #php #webdev #разработка

Обновлена информация в Плане развития Joomla

👩‍💻 Обновлена информация в Плане развития Joomla.Здесь собрана информация о датах релизов, описаны принципы версионирования, указаны ответственные за релизы, а так же даты окончания поддержки релизов. Опираясь на эту информацию вы можете планировать развитие ваших интернет-проектов.👩‍💻 Что нового?⛔️ Joomla 4.Дата окончания исправления ошибок безопасности в версии 4.x - 14 октября 2025г. ⚠️ После этой даты Joomla 4 прекратит получать какие-либо обновления, в том числе безопасности - вообще. Рекомендуем обновить ваши сайты до актуальной Joomla 5.✅ Joomla 5.- Дата окончания исправления ошибок в версии 5.x - 13 октября 2026г.- Дата окончания исправления ошибок безопасности в версии 5.x - 12 октября 2027 года.- Текущая актуальная (на момент написания заметки) версия - 5.3.1.- Опубликовано расписание выхода релизов Joomla 5.4. Стабильный релиз ожидается 14 октября 2025 года.✅ Joomla 6.- Дата окончания исправления ошибок в версии 6.x - 17 октября 2028г.- Дата окончания исправления ошибок безопасности в версии 6.x - 16 октября 2029г.- Опубликовано расписание выхода релизов Joomla 6.0. Стабильный релиз ожидается 14 октября 2025 года.- Для разработчиков уже доступна Joomla 6.0.0-alpha1.✅ Joomla! Framework.Обновлена информация о Joomla! Framework - полноценном PHP-фреймворке для разработки. Он в версиях 1.х и 2.х был самостоятельным параллельным проектом, однако начиная с версии Joomla 4.0 стал её основой. Добавлена информация о Joomla! Framework 3.x, который вышел 6 октября 2023 года. Его можно использовать в тех случаях, когда вам в проекте не нужна CMS Joomla целиком.Подробнее на сайте Joomla-сообщества Joomlaportal.ru#joomla #community

Компания JetBrains рассказала о своей поддержке Joomla

Компания JetBrains рассказала о своей поддержке Joomla

JetBrains - один из мировых лидеров в разработке программного обеспечения для разработчиков. Её программные продукты - это IDE - профессиональные среды разработки, которые отличаются от простого блокнота/редактора с плагинами набором всевозможных инструментов для разработчиков, глубоким анализом кодовой базы, подсказками по ней и по языку программирования, отладкой ошибок и многим-многим другим. Одним из самых известных продуктов компании является IDE PHP Storm, который можно назвать отраслевым стандартом PHP-разработчика.

В статье How PhpStorm Helps Maintain PHP Open-Source Projects: Interviews and Real-World Examples в блоге компании описываются Open Source проекты, которым JetBrains оказывает поддержку (это могут быть бесплатные лицензии для разработчиков для некоммерческих проектов).

В список попали:

  • PHPUnit - фреймворк для unit-тестирования в PHP
  • Doctrine DBAL - библиотека для PHP, которая предоставляет лёгкий и гибкий слой для коммуникации с базой данных. Она поддерживает различные базы данных через единый и согласованный API.
  • CodeIgniter — популярный MVC-фреймворк для разработки на PHP
  • Joomla! - наша любимая CMS.

Эти названия (кроме "Joomla") чаще всего не слышат вебмастера и разработчики обычных сайтов и интернет-магазинов. Но эти названия хорошо знакомы PHP-разработчикам, которые создают сложные и высоконагруженные проекты и микросервисы. То, что Joomla оказалась в одном ряду с такими программными инструментами - делает ей честь.

🙏 За ссылку спасибо участнику нашего сообщества Ринату Кажетову (@rkazhet).

Подпишитесь на @joomlafeed

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

polezniy

  • Захожу иногда
  • 442
  • 1 / 0
Всем привет, заметил закономерность, если очищать устаревший кэш, то скорость сайта возрастает, проверял доступность с помощью ping-admin, указано что DNS в разы увеличивается скорость загрузки...раз в сутки нужно очищать кэш чтобы скорость была высокой...Немного напряжно, в чем соль может кто знает?
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
Кеш большой ? Не зная специфики работы сайта сложно судить, но возможно кеширование плохо настроено, при неправильном подходе возможно замедление работы вместо прироста.
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Переведите пожалуйста первый пост.
Я не понял о чем речь в этом наборе терминов
*

polezniy

  • Захожу иногда
  • 442
  • 1 / 0
Кеш большой ? Не зная специфики работы сайта сложно судить, но возможно кеширование плохо настроено, при неправильном подходе возможно замедление работы вместо прироста.
за сутки примерно мегабайт 60, по идеи норм должно быть настроено, включено прогрессивное кэширование, оптимизирован .htaaces,  + включен плагин кэш + подключен и настроен плагин jch оптимизация.
*

polezniy

  • Захожу иногда
  • 442
  • 1 / 0
Переведите пожалуйста первый пост.
Я не понял о чем речь в этом наборе терминов
Перевожу, по результатам доступности сайта с помощью сервиса  Ping-Admin, было выявлено прямая зависимость скорости загрузки сайта а именно параметра (DNS, сек) с очисткой "Устаревшего кэша", а не вкладка очистить весь кэш. После очистки устаревшего кэша. Например DNS по результатам тестирования изначально был 0,6....вплоть до 1 и больше секунды... После очистки устаревшего кэша скорость увеличилась в разы и теперь не 06, а 0,06 + сайт начал быстрее грузиться.
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
DNS - это вообще про домены, причем тут кэш?
*

polezniy

  • Захожу иногда
  • 442
  • 1 / 0
в тесте написано DNS, сек  - это Время, потребовавшееся на определение IP по адресу сайта. При этом очистка устаревшего кэша влияет! Для меня это парадокс
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Она не влияет, потому что не может влиять.
Точка.
На свалку тему закиньте
*

xpank

  • Захожу иногда
  • 448
  • 41 / 0
в тесте написано DNS, сек  - это Время, потребовавшееся на определение IP по адресу сайта. При этом очистка устаревшего кэша влияет! Для меня это парадокс
С таким успехом и очистка кеша браузера ускорит пинг dns серверов ;D Но этого не случится. DNS сервера - это отдельные сервера с со своими IP адресами. Верно то, что при обращении к сайту, прежде произойдет обращение к DNS серверам, указанным у пользователя в настройках сетевого подключения. Обычно это, либо сервера провайдера, либо гугл/яндекс или совместно и те и другие, не суть, важно лишь то, что к скорости загрузки сайта они не имеют ни малейшего отношения. Как пример - железная дорога, это сеть, стрелки на путях - dns сервер, поезд - запрос. Так вот как стрелка может ускорить поезд? Никак, она лишь дает направление движения, чтобы он достиг правильного места назначения. Единственное что в данном случае влияет - пинг до самого сервера, т.е. насколько он удален от пользователя и сайта.
 Ускорить может смена dns. Но опять таки, это зависит от пользователя, к каким он обращается, но это мизерный выигрыш, который не заметен человеку, если сайт работает нормально. Если сайт тормозит - то нужно разбираться с ним.
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
Скорее всего ваш пинг админ трактует про ответ сервера - а это напрямую зависит от оптимизации сайта.
Зачем прогрессиное кеширование? Оно нужно лишь в редких случаях. Тот же JCH Optimize может замедлять работу.
*

ChaosHead

  • Гуру
  • 5242
  • 451 / 13
JCH Optimize может замедлять работу
Это одна из вероятных причин. Вторая - это например может быть очень медленный жесткий диск (либо загибающийся от нагрузки), но на хостинге много оперативки и всё кэширует Opcache и кэш базы данных. В итоге прочитать файлы кэша с диска медленней, чем сгенерировать страницу заново. Но это менее вероятный вариант.
*

polezniy

  • Захожу иногда
  • 442
  • 1 / 0
Я просто тестировал не один раз, и все склонялось к этому....
*

polezniy

  • Захожу иногда
  • 442
  • 1 / 0
а касаемо ответа сервера, он на одно и том же положении
*

polezniy

  • Захожу иногда
  • 442
  • 1 / 0
и самое интересное многие проекты проверил такая же ситуация, сравню на днях проект , который находится на другом хостинге и отпишусь
*

polezniy

  • Захожу иногда
  • 442
  • 1 / 0
Протестировал, оказалось что я действительно прав, протестируйте свои проекты по такому же способу
*

ChaosHead

  • Гуру
  • 5242
  • 451 / 13
Предпочитаю loadimpact.com, который меряет нечто более понятное и осязаемое - сколько человек потянет ваш сайт, если они все подключатся один за другим и какое время при этом он будет грузится.
Можете попробовать с кэшем и без. Кстати надеюся, что кэш стандартный включен?
*

polezniy

  • Захожу иногда
  • 442
  • 1 / 0
Сайты, которые небольшие там прогрессивный поставил, а вот на крупные проекты стандартный стоит
*

ChaosHead

  • Гуру
  • 5242
  • 451 / 13
Прогрессивный не нужен. Писал тут на форуме почему.
*

polezniy

  • Захожу иногда
  • 442
  • 1 / 0
Если я не ошибаюсь, Вы же писали, если проект маленький то вроде как его есть смысл ставить, но при больших проектах стандартное?
*

ChaosHead

  • Гуру
  • 5242
  • 451 / 13
Нет, там упор не на размер был. Если все гости видят одно и то-же, то нужно стандартное кэширование.
*

polezniy

  • Захожу иногда
  • 442
  • 1 / 0
Нет, там упор не на размер был. Если все гости видят одно и то-же, то нужно стандартное кэширование.
Спасибо за совет.
*

Alivio

  • Захожу иногда
  • 72
  • 0 / 0
Предпочитаю loadimpact.com, который меряет нечто более понятное и осязаемое - сколько человек потянет ваш сайт, если они все подключатся один за другим и какое время при этом он будет грузится.
Спасибо за наводку, проверил 25 подключений поднимают нагрузку процессора в среднем на 10% процентов.
Как считаете примерно сколько тогда может человек максимум выдержать сервер?
*

ChaosHead

  • Гуру
  • 5242
  • 451 / 13
Оперативку ещё смотрите. Я ж не знаю сколько было, а потом на 10% поднялось и сколько осталось. Но если 25 одновременных держит, то это уже хорошо.
*

Alivio

  • Захожу иногда
  • 72
  • 0 / 0
Оперативка всегда свободна больше 1Гб, с запасом брал.
Получилось запустить одновременно 5 тестов с 25 подключениями, значит 125 в общем.
Нагрузка на процессор подскочила максимом до 80%, а сайт так же быстро работает.
*

ChaosHead

  • Гуру
  • 5242
  • 451 / 13
Это с головой, если только у вас не ресурс с десятками тысяч посетителей в день.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор Leo1986

Ответов: 17
Просмотров: 860
Последний ответ 11.06.2025, 13:55:08
от zilonitiz
Как конвертировать сайт Joomla в мобильное приложение?

Автор 62411

Ответов: 1
Просмотров: 885
Последний ответ 14.06.2024, 15:31:24
от Olg
После выключения расширения лег сайт

Автор blind

Ответов: 4
Просмотров: 1066
Последний ответ 19.05.2024, 14:13:33
от blind
Google Переводчик не переводит сайт

Автор Aqua

Ответов: 1
Просмотров: 1123
Последний ответ 04.03.2024, 12:50:00
от kovAlexandr78
Администрирую и редактирую сайт на CMS Joomla. Вопросы про настройки CMS

Автор admi5575

Ответов: 4
Просмотров: 916
Последний ответ 10.05.2023, 09:02:29
от admi5575