Новости 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 для атрибута addfieldprefix namespace 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 Гость просматривают эту тему.
  • 29 Ответов
  • 7666 Просмотров
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
В админке Joomla 3 перестали отображаться некоторые компоненты. Кто знает, как это исправить? Желательно пошагово.
Всего доброго, с Наступающим Новым Годом, Мои лучшие пожелания всем.
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
По такому описанию только бог может описать  ^-^
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
По такому описанию только бог может описать  ^-^
Уточнение:
например не отображается Akeeba плагин
http://i.yapx.ru/DCSXn.png


*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
ну а после чего перестало отображаться?
обновление или еще что
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
ну а после чего перестало отображаться?
обновление или еще что


Да, скорее всего после какого то обновления
« Последнее редактирование: 28.12.2018, 17:22:10 от sarvasvova »
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
ну а после чего перестало отображаться?
обновление или еще что

Вот кажется кто то имел такую проблему, но решение для Меня не совсем понятно:
"Проанализировав файл \administrator\modules\mod_menu\helper.php получил запрос, по которому формируется данное меню:

Код
SELECT m.id, m.title, m.alias, m.link, m.parent_id, m.img, e.element, m.menutype
FROM <префикс>_menu AS m
INNER JOIN <префикс>_extensions AS e ON m.component_id = e.extension_id
WHERE m.menutype = 'main' AND m.client_id = 1 AND m.id > 1 AND e.enabled = 1

Поигравшись с запросом, выяснил, что в таблице <префикс>_menu у проблемных (неотображающихся) пунктов поле menutype имеет значение "menu" вместо "main".

Затем выполнил простейший запрос:
Код
UPDATE <префикс>_menu SET menutype = 'main' WHERE menutype = 'menu'

Вуаля, проблема решена."
отсюда: После обновления до Joomla 3.7 в админке в меню "Компоненты" пропали пункты

« Последнее редактирование: 28.12.2018, 17:23:06 от sarvasvova »
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
В бд
В таблице menu
Поменять на main
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
В бд
В таблице menu
Поменять на main
а как это делается, пошагово?
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Идете в phpMyAdmin
Открываете свою бд
Ищите таблицу и смотрите что там.дабы убедиться что проблема в этом.
Потом жмакаете вкладку sql  и туда запрос что выше привели в конце поста. Вместо префикса свой префикс
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
Идете в phpMyAdmin
Открываете свою бд
Ищите таблицу и смотрите что там.дабы убедиться что проблема в этом.
Потом жмакаете вкладку sql  и туда запрос что выше привели в конце поста. Вместо префикса свой префикс
префикс это jp8od  ?
http://i.yapx.ru/DCTv6.png
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Да
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
Да
жмакнул, вставил
UPDATE <jp8od>_menu SET menutype = 'main' WHERE menutype = 'menu'
выдает"
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '<jp8od>_menu SET menutype = 'main' WHERE menutype = 'menu'' at line 1
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Без треугольных скобок
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
Без треугольных скобок
получилось, но выдало
Затронуто 0 строк. ( Запрос занял 0.0017 сек. )
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Так посмотрите в таблице menu
 Есть вообще или нет
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
Так посмотрите в таблице menu
 Есть вообще или нет
вот это есть:
jp8od_menu
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Ну а в ней какие у пунктов менютайпы
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
Ну а в ней какие у пунктов менютайпы
main
и еще
mainmenu
http://i.yapx.ru/DCVMK.png
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
Ну а в ней какие у пунктов менютайпы
а вот akeeba menu почему то нет, может поэтому и не отображается в админ панели?
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Так а компонент то установлен?
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
Так а компонент то установлен?
конечно, в него можно зайти если вручную вставить administrator/index.php?option=com_akeeba
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Попробуйте
Расширения- менеджер- бд - исправить
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Ну и как вариант перезалить
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Акиба не критичный компонент. На работу сайта не влияет
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
Ну и как вариант перезалить
исправить делал, перезалить попробую,
там еще кто то дал совет:
"Была похожая ситуация, надо было зайти в пункты меню, выбрать пункты админки (новая фича 3.7) и активировать необходимые."
Не совсем понятно, как это и где надо сделать?
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
исправить делал, перезалить попробую,
там еще кто то дал совет:
"Была похожая ситуация, надо было зайти в пункты меню, выбрать пункты админки (новая фича 3.7) и активировать необходимые."
Не совсем понятно, как это и где надо сделать?
Тут не подскпжу. Не сталкивался
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
Тут не подскпжу. Не сталкивался
Ок. С Наступающим Новым Годом, желаю всего самого хорошего, здоровья, счастья, любви!))
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь


Тут не подскпжу. Не сталкивался
Кажется проблема решается так
https://forum.joomla.org/viewtopic.php?f=708&t=847722&p=3212189#p3212189
В базе данных меню отсутствует 1 таблица, её надо создать
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Кажется проблема решается так
https://forum.joomla.org/viewtopic.php?f=708&t=847722&p=3212189#p3212189
В базе данных меню отсутствует 1 таблица, её надо создать
а установка не помогает? акибы
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

sarvasvova

  • Захожу иногда
  • 81
  • 1 / 0
  • Господь
а установка не помогает? акибы
Нет, не помогает. Акиба ставится, но в панели управления её нет. Добавил 1 первую строку в базе данных _menu , там не хватало 1 строки, начиналось сразу с номера 2, и всё заработало правильно.

С Наступающим Новым Годом всех! Желаю любви, счастья, веры, здоровья, успехов во всём!

Владимир Сарвас
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Некоторые плагины и темы не работают на другой версии php

Автор max.slanskii

Ответов: 1
Просмотров: 893
Последний ответ 28.07.2023, 00:11:47
от sivers
После обновления до Joomla 3.7 в админке в меню "Компоненты" пропали пункты

Автор lolitma3

Ответов: 39
Просмотров: 13130
Последний ответ 15.06.2023, 11:55:16
от Victor333
Не отображаются товары при фильтрации с помощью CustomFilters

Автор Stayer1986

Ответов: 3
Просмотров: 908
Последний ответ 11.11.2022, 12:08:10
от marksetter
Ни в одном редакторе не отображаются стили CSS

Автор samallex

Ответов: 0
Просмотров: 629
Последний ответ 02.02.2022, 15:02:15
от samallex
Не отображаются сделанные изменения

Автор ruppert

Ответов: 23
Просмотров: 1643
Последний ответ 14.07.2020, 21:45:03
от Volegost