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

tysson

  • Захожу иногда
  • 263
  • 2 / 0
Господа и дамы!

Какие-то есть инструменты для оптимизиции скорости загрузки сайта? посоветуйте.

много картинок, в шаблон слишком много запросов....в общем хочу ускориться
*

TwistedAndy

  • Захожу иногда
  • 84
  • 23 / 1
WebOptimizer от webo.in

А так я ручками советую все оптимизировать, шаблон переписать, сервер настроить...
*

tysson

  • Захожу иногда
  • 263
  • 2 / 0
спасибо! кроме ручек нужен мозг. с этим проблемы. :-*
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Мозг есть, проблемы с деньгами. Всегда возможен разумный обмен :-)
*

Dusted

  • Захожу иногда
  • 180
  • 49 / 0
Есть еще rokzipper от rockettheme. Бесплатный:)
Куплю ваши сайты, рассмотрю все варианты - пишите в личку.
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Грамотная оптимизация и ускорение всегда делается только ручками и индивидуально
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Есть еще rokzipper от rockettheme. Бесплатный:)

+1 не знал - спасибо!
*

dreamwind

  • Захожу иногда
  • 166
  • 27 / 13
+1 не знал - спасибо!

Можно сюда же добавить CssJsCompress, но это так -- игрушки на один день :) Тем более бесплатные :)
*

Dusted

  • Захожу иногда
  • 180
  • 49 / 0
Но лично мне нравится больше всех Web Optimizer:)
Удобно, быстро, качественно, много настроек. Правда чтобы грамотно работало - надо посидеть в настройках.
Куплю ваши сайты, рассмотрю все варианты - пишите в личку.
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Можно сюда же добавить CssJsCompress, но это так -- игрушки на один день :) Тем более бесплатные :)

Ну почему же игрушки? Если у вас постоянно грузится mootools - то очень даже не игрушки. Мой хостер например, отключил gzip сжатие. В результате нечем жать скрипты и CSS.

Для Joomla 1.0 есть хорошие решения? Вроде все перечисленное идет под 1.5?
« Последнее редактирование: 18.01.2010, 03:57:54 от jem777 »
*

dreamwind

  • Захожу иногда
  • 166
  • 27 / 13
Ну почему же игрушки?
Потому что функционал почти что прошлого века :)

Для Joomla 1.0 есть хорошие решения?
Web Optimizer есть под Joomla! 1.0
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Можно сюда же добавить CssJsCompress, но это так -- игрушки на один день :) Тем более бесплатные :)

А мне понравился этот компрессор. Спасибо!

Потому что функционал почти что прошлого века :)
Web Optimizer есть под Joomla! 1.0

Ну насчет функционала рассуждать пока не буду. Надо будет потом обязательно покопаться в этом оптимайзере. Еще раз спасибо за наводку на эти плагины! +1.))
*

Beer

  • Завсегдатай
  • 1103
  • 43 / 1
  • БИРУ - БИР!
При использовании Web Optimizer - штатное кеширование на сайте надо вырубать как я понимаю, так?
*

dreamwind

  • Захожу иногда
  • 166
  • 27 / 13
При использовании Web Optimizer - штатное кеширование на сайте надо вырубать как я понимаю, так?

Заявляли о проблемах с System - Cache. Но если вы используете некоммерческую версию, и нет условных комментариев, то проблем не должно возникнуть.
*

Beer

  • Завсегдатай
  • 1103
  • 43 / 1
  • БИРУ - БИР!
 Вроде как он бесплатный мне показалось.
 Пока лазил по инету про него, наткнулся на версию для Joomla 1.5 - http://web-optimizator.googlecode.com/files/web-optimizer.v0.6.7.joomla15.zip.
 Не ставил пока.
*

Sulpher

  • Живу я здесь
  • 2126
  • 402 / 16
  • Шаблоны и расширения Joomla
Как вариант - если на сайте не используется mootools, то принудительно его отключать такой конструкцией (после head):

Код: php
<?php
$user =& JFactory::getUser();
$Itemid = JRequest::getInt( 'Itemid', 6, 'get' );
    $tplurl = JURI::base().'templates/'.$this->template;
$document = & JFactory::getDocument();
$curlang = $document->language;
$view = JRequest::getVar('view', null);
    $articleid = JRequest::getInt('id', null);
if ($user->get('guest') == 1) {
$headerstuff = $this->getHeadData();
$scripts = $headerstuff['scripts'];
$headerstuff['scripts'] = array();
foreach($scripts as $url=>$type) {
if (strpos($url, 'js/mootools.js') === false && strpos($url, 'js/caption.js') === false) {
$headerstuff['scripts'][$url] = $type;
}
}
$this->setHeadData($headerstuff);
}

?>

как вариант - на выхлопе -70 кб. А это уже неплохой результат. Также не стесняйтесь прогонять графику с помощью онлайн-сервиса PunyPNG.
Ну и, разумеется, оптимизация должна проводиться в штатном режиме в зависимости от используемых компонентов.
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
К сожалению используется. JoomGallery без него не может. Вернее может, но эффекты отключаются. Так что выход - только сжатие.
Кстати, иногда Joomla начинает подгружать несжатую версию mootools, который весит аж 170Кб кажется. Я его в коде самой Joomla (внаскидку не вспомню имя файла, нашел через поиск dreamweaver) вырезал и указал на 70Кб версию. Надеюсь на работу самой Joomla это не скажется критично. Вроде все пашет.
*

Beer

  • Завсегдатай
  • 1103
  • 43 / 1
  • БИРУ - БИР!
Цитировать
Как вариант - если на сайте не используется mootools
Прописал конструкцию на локале - все вроде работает.
А где он используется штатно? Joom Gallery пока не ставил.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
Кстати, иногда Joomla начинает подгружать несжатую версию mootools

Только в режиме отладки или при использовании браузера Konqueror.
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Прописал конструкцию на локале - все вроде работает.
А где он используется штатно? Joom Gallery пока не ставил.

Будете смеяться, но кажется в админке. Всплывающие меню слева. Также их любят использовать некоторые шаблоноделатели. Вообще за mootools здесь сильно обсуждали. И даже сильно ругались.))
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Только в режиме отладки или при использовании браузера Konqueror.

Понятно.
*

SpideRus

  • Осваиваюсь на форуме
  • 32
  • 2 / 1
Также не стесняйтесь прогонять графику с помощью онлайн-сервиса PunyPNG.

Не врублюсь как работает сервис.
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Я тоже не понял. Наверное лучше поискать другие подобные ресурсы.

А web-optimizator мне не совсем понравился. Это типа расширенное кэширование. По типу JRE Cache. Плюс в бесплатной версии он не сжимает скрипты и CSS файлы.
CssJsCompress мне больше понравился. Очень сильно сжимает данные и вроде все работает. JoomGallery с ним нормально пока заработал. Правда все тестирую пока на локалке, может на сервере и вылезут какие нибудь проблемы.
Вот найти бы сейчас что нибудь наподобие CssJsCompress, только для Joomla 1.0
*

Dusted

  • Захожу иногда
  • 180
  • 49 / 0
Я тоже не понял. Наверное лучше поискать другие подобные ресурсы.

А web-optimizator мне не совсем понравился. Это типа расширенное кэширование. По типу JRE Cache. Плюс в бесплатной версии он не сжимает скрипты и CSS файлы.


Все он сжимает в бесплатной версии, посмотрите настройки. Мало того что сжимает, так еще и группирует, делая один файл вместо нескольких.
Куплю ваши сайты, рассмотрю все варианты - пишите в личку.
*

nelix

  • Захожу иногда
  • 206
  • 24 / 0
Не врублюсь как работает сервис.
Нажимаешь Upload images выбираешь свою картинку. Дальше сервис напишет результат. Жмешь download.
*

Beer

  • Завсегдатай
  • 1103
  • 43 / 1
  • БИРУ - БИР!
Лучше поставь фотошоп - руками надежнее. Не все, что хорошо в гиф, лучше в жипег и наоборот. По времени будет одинаково, а результат надежнее и под контролем.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
Лучше поставь фотошоп - руками надежнее. Не все, что хорошо в гиф, лучше в жипег и наоборот. По времени будет одинаково, а результат надежнее и под контролем.
Как-раз таки фотошоп очень много мета-инфы добавляет в изображения, в итоге увеличивая их размер.
*

Beer

  • Завсегдатай
  • 1103
  • 43 / 1
  • БИРУ - БИР!
 ?
Первый раз слышу такое....
дай образец что ли тогда..

ЗЫ еще правильнее - образец с фотошопа с множеством метаинфы и результат прогонки изображения через сервис.
*

fedya

  • Захожу иногда
  • 463
  • 50 / 1
для оптимизации png используйте PNGGauntlet
Вместо того, чтобы доказывать истинность своих положений и опровергать аргументацию оппонента, демагог может обращаться к приёму ad hominem — критиковать не аргументы, а личность оппонента, пытаясь убедить зрителей, что оппонент — плохой, недостойный, не разбирающийся в вопросе, пристрастный или лицемерный человек.
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
Первый раз слышу такое....

Образца нет, так как фотошопом не пользуюсь (ибо дорого). Но помню, что на форуме разбирался случай, когда Joomla не хотела закачивать на сервер изображение, и, как выяснилось, это было по причине наличия большого блока информации в xml-формате внутри файла. Судя по информации в том блоке, файл был создан как раз-таки в фотошопе.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Изменить текст на вкладке браузера с "главная" на название сайта

Автор EvgeniyyB

Ответов: 11
Просмотров: 17975
Последний ответ 07.03.2018, 15:50:48
от vetalist
Как оптимизировать фотографии

Автор Lzrv

Ответов: 17
Просмотров: 3882
Последний ответ 01.11.2017, 13:45:33
от Lzrv
Вопрос по настройке новостной ленты на главной странице сайта

Автор jaff

Ответов: 13
Просмотров: 7477
Последний ответ 15.09.2017, 15:49:19
от sect
Как оптимизировать нагрузку на сервер баз данных?

Автор kabban

Ответов: 7
Просмотров: 2337
Последний ответ 05.05.2017, 07:06:46
от Филипп Сорокин
Произошел сбой сайта, пишет ошибку

Автор alex86r93

Ответов: 8
Просмотров: 2260
Последний ответ 28.03.2017, 18:11:57
от alex86r93