Новости Joomla

Вышел WT Quick links v.2.4.0 - релиз модуля для Joomla

Вышел WT Quick links v.2.4.0 - релиз модуля для Joomla.Это модуль-конструктор для быстрого создания набора элементов. Это могут быть ссылки на компоненты Joomla, пункт меню или пользовательская ссылка. Есть условия для исключений показа элементов списка. Вы можете создавать собственные макеты вывода модуля, создавая таким образом почти всё, что угодно: от простого списка ссылок до стены фотографий на главную страницу или ссылки-теги для перелинковки категорий интернет-магазина, список FAQ, табы или аккордеоны. Модуль позволяет выводить изображения, адаптивные изображения, видео, адаптивные видео.v.2.4.0. Что нового?Добавлена поддержка новых компонентов. Добавлены новые типы ссылок и исключений для них: - Phoca Download, - Phoca Gallery, - RadicalMart (@radicalmart).Joomla 6. Успешно протестирована работа модуля на Joomla 6-alpha2.РазработчикамПроведён большой рефакторинг кода. Для типов ссылок созданы классы-драйверы. Теперь для того, чтобы добавить новый тип ссылки в модуль достаточно скопировать класс-образец из
modules/mod_wt_quick_links/src/Driver/Collection и наполнить его данными по образцу, а так же добавить необходимые языковые константы в панели администратора Joomla.Модуль бесплатный. Страница расширенияGitHub расширенияJoomla Extensions Directory👩‍💻 Подпишись на @joomlafeed.#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

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

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Мне кажется, впору уже писать разработчикам Joomla )))
Если у SmokerMan тоже некорректно настроен сервер, это еще не значит что в движке проблема.
Да, и причем тут разработчики то?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
вот тебе пример чистая J стоит последняя
http://elisa-office.ru/materialy
материал спокойно открывается
http://elisa-office.ru/materialy/1.jpg
у меня такое не работает. возвращает 404 как положено. какой пункт меню materialy ?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

SmokerMan

  • Гуру
  • 5291
  • 720 / 26
Если у SmokerMan тоже некорректно настроен сервер, это еще не значит что в движке проблема.
у меня там все нормально настроено, поверь, и на локалке кстати то же самое происходит
если ты там чего-то мутил у себя, то это не значит что у всех так должно быть)
еще раз говорю - это обычная стандартная работа роутера com_content

у меня такое не работает. возвращает 404 как положено. какой пункт меню materialy ?
список материалов категории как видно)
*

sejunctus

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
у меня такое не работает. возвращает 404 как положено. какой пункт меню materialy ?
А у меня работает и отдает код 200.
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Причем тут пункты меню итп..
Дело в том, что такой запрос не должен доходить до движка, то есть рыть надо в сторону php handler
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
у меня там все нормально настроено, поверь, и на локалке кстати то же самое происходит
если ты там чего-то мутил у себя, то это не значит что у всех так должно быть)
еще раз говорю - это обычная стандартная работа роутера com_content
список материалов категории как видно)

да что ж тут нормального :) сделал у себя materialy как список материалов категории. вот пример нормального
http://demex.nevigen.com/ru/materialy/1.html - 200
http://demex.nevigen.com/ru/materialy/1.jpg - 404
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
у меня там все нормально настроено, поверь, и на локалке кстати то же самое происходит
если ты там чего-то мутил у себя, то это не значит что у всех так должно быть)
еще раз говорю - это обычная стандартная работа роутера com_content

Блин!
Еще раз - в обычной ситуации такие запросы НЕ ДОХОДЯТ до роутера, и поэтому абслолютно НЕВАЖНО как он их обрабатывает!
*

sejunctus

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Блин!
Еще раз - в обычной ситуации такие запросы НЕ ДОХОДЯТ до роутера, и поэтому абслолютно НЕВАЖНО как он их обрабатывает!
А можете листинг .htaccess показать? Как у вас там все настроено?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
у меня стандартный
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

sejunctus

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
у меня стандартный
А хостинг какой?
*

SmokerMan

  • Гуру
  • 5291
  • 720 / 26
Блин!
Еще раз - в обычной ситуации такие запросы НЕ ДОХОДЯТ до роутера, и поэтому абслолютно НЕВАЖНО как он их обрабатывает!
ты противоречить сам себе)
я тебе ссылку давал на твой же сайт http://www.joomla15.ru/107.php
если оно выдает ошибку значит до роутера доходит как-то?) иначе как бы оно определило что это
Цитировать
Представление не найдено [name, type, prefix]: article, php, contentView
причем этой ошибки вообще не должно быть)
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
А можете листинг .htaccess показать? Как у вас там все настроено?
Всё стандартно, кроме пары редиректов
Спойлер
[свернуть]
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
ты противоречить сам себе)
я тебе ссылку давал на твой же сайт http://www.joomla15.ru/107.php
если оно выдает ошибку значит до роутера доходит как-то?) иначе как бы оно определило что это причем этой ошибки вообще не должно быть)
Топик вообще не читаешь?
Ну да.
В первом случае движок обрабатывает запрос и подставляет свою страницу 404
Во втором же, до него запрос даже не доходит, нгинкс (хотя голый апач должен себя вести также) просто видит что такого файла нет и отдаёт свой ответ 404.
Первый случай - это только запросы без "расширения" или с "расширением" HTML, htm, php (может еще несколько)
*

SmokerMan

  • Гуру
  • 5291
  • 720 / 26
я понял)
потому что у вас префикс HTML включен если его выключить то будет подобная картина
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
во! нашли :) подтверждаю. отключил префикс - стал материалом. еще один плюс в использовании префикса :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

sejunctus

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Всё стандартно, кроме пары редиректов
Спойлер
[свернуть]
Прописал как у вас, стало отдавать "Object not found" и код 404
Поставил стандартный от Joomla - все снова стало отображаться
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
я понял)
потому что у вас префикс HTML включен если его выключить то будет подобная картина
Лишь отчасти.
Проверил - в этом случае у меня 107.php выдает материал (ну точнее наверно, так как тут уже JL NoDoubles своё отрабатывает).
Но это никак не влияет на то, что я выше писал, что такие запросы не должны до него доходить
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Прописал как у вас, стало отдавать "Object not found" и код 404
Поставил стандартный от Joomla - все снова стало отображаться
О как!
Но у меня же стандартный.. правда с давних версий..
А в чём отличия?
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Ха, нашел причину
Код
# RewriteBase /

## Begin - Joomla! core SEF Section.
#
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
#
# If the requested path and file is not /index.php and the request
# has not already been internally rewritten to the index.php script
RewriteCond %{REQUEST_URI} !^/index\.php
# and the request is for something within the component folder,
# or for the site root, or for an extensionless URL, or the
# requested URL ends with one of the listed extensions
RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
# and the requested path and file doesn't directly match a physical file
RewriteCond %{REQUEST_FILENAME} !-f
# and the requested path and file doesn't directly match a physical folder
RewriteCond %{REQUEST_FILENAME} !-d
# internally rewrite the request to the index.php script
RewriteRule .* index.php [L]
#
## End - Joomla! core SEF Section.
Вот из-за наличия этой строчки у меня ведёт себя правильно
Код
# and the request is for something within the component folder,
# or for the site root, or for an extensionless URL, or the
# requested URL ends with one of the listed extensions
RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
*

sejunctus

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Вот  что нашел, однако
Брайна на мыло!
Добавил RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
Вот теперь так получается. Набираем http://stopfire.su/images/13.jpg - редиректит на главную
Вводим: http://stopfire.su/sfsfsfsf/sfsfsfs/fs/fs/fs/fsf1/13.jpg  - "Object not found"
При этом http://stopfire.su/images/13.jpg - отдает код 404
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Вот теперь так получается. Набираем http://stopfire.su/images/13.jpg - редиректит на главную
Ничего не редиректит, это закэширвалось.
Всё ок с Вас спасибы :-)
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Вот тут убрали
До этого была строчка в стандартной поставке
*

sejunctus

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Вот тут убрали
До этого была строчка в стандартной поставке
Спасибо вам большое!
Наконец-то!
А зачем они вообще убрали эту строчку?
То, что страница отображается "Object not found" - это ведь нормально? А никак не сделать, чтобы страница отображалась?
Вы там говорили, про роутер и про сервер - я помню. А вариантов эту страницу настроить нет?
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Спасибо вам большое!
Наконец-то!
А зачем они вообще убрали эту строчку?
То, что страница отображается "Object not found" - это ведь нормально? А никак не сделать, чтобы страница отображалась?
Вы там говорили, про роутер и про сервер - я помню. А вариантов эту страницу настроить нет?
Это у Брайна надо спросить зачем, я ему в твиттере адресовал вопрос.
*

sejunctus

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
А все-таки, возможно ли как настроить именно страницу "Object not found". Она, конечно, на уровне сервера отображается, но может есть варианты?
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
А все-таки, возможно ли как настроить именно страницу "Object not found". Она, конечно, на уровне сервера отображается, но может есть варианты?
Конечно можно
Прописать в htaccess
Код
ErrorDocument 404 /404.html
и создать какой угодно душе 404.html (только это именно файл отдельный, не страничка движка)
*

sejunctus

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Конечно можно
Прописать в htaccess
Код
ErrorDocument 404 /404.html
и создать какой угодно душе 404.html (только это именно файл отдельный, не страничка движка)
Это нужно прописать в .htaccess, который лежит в корневой папке Joomla или на уровень выше?
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Это нужно прописать в .htaccess, который лежит в корневой папке Joomla?
Да, в ней
*

sejunctus

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Да, в ней
Наконец все встало на свои места. Спасибо огроменное!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться