Новости 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 #разработка

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

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Вышел релиз Joomla! 3.8.1
« : 04.10.2017, 21:25:18 »
Собственно работа над ошибками. 29 исправлений, в числе которых:
- фикс атрибута srcset
- плагин перенаправлений выполнял некорректные перенаправления
- фикс логина через LDAP
- и другое

Официальная новость
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #120 : 30.10.2017, 22:21:47 »
Иногда ещё помогает чистка кеша браузера. И смотрите в консоли js
*

Gogasik

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #121 : 01.11.2017, 14:06:33 »
Добрый день!
Простите, если решение уже есть...
Я новенький на форуме и по поиску не смог найти ответ
Сайт Joomla
тема: it_motor2
Обновил на 3.8.1
и не могу попасть в редактор меню (через админку джумлы)
пишет ошибка 500
при подробном изучении выдает:
 Fatal error: Call to undefined method JModuleHelper::isAdminMultilang() in /home/a/************/public_html/administrator/components/com_menus/controller.php on line 34

Помогите пожалуйста советом или просто ткните, где рыть?
*

Gogasik

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #122 : 03.11.2017, 15:49:23 »
Я прошу прощения, но что такая проблема была у только у меня?
Хоть подскажите где читать о данной проблеме.
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #123 : 03.11.2017, 16:01:16 »
 Fatal error: Call to undefined method JModuleHelper::isAdminMultilang() in
Цитировать
This thread points to a non-successful upgrade.

JModuleHelper is not a real class in 3.8 anymore, it is aliased to Joomla\CMS\Helper\ModuleHelper. So the error message would reference the namespaced class if it were something to do with that.

isAdminMultilang() is a new method in the module helper added in 3.8. The old libraries/cms/module/helper.php file won't have that method as it was supposed to be deleted.
Неверно обновили
*

Gogasik

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Вышел релиз Joomla! 3.8.1
« Ответ #124 : 03.11.2017, 16:46:34 »
Неверно обновили
Простите пожалуйста, а как верно обновить?
Я нажал кнопку обновить, он обновился.
Не работает!
Скачал дистриб по ссылке на данном форуме, обновил.
Не работает!

Как еще можно сделать не правильно?
Притом, что я вроде обновлял уже раз 10-20 точно и все вроде было правильно.
И проблема в том, что я с ДУРУ не сделал бекап  (знаю что ЛОХ), а на хостинге хранятся бэкапы за несколько дней, а я не увидел сразу эту проблему а теперь ....

Вопрос тогда немного может лоховский - а на 3.7 как то можно с дистрибутива откатиться ?
Или только новая установка?
« Последнее редактирование: 03.11.2017, 23:44:48 от Gogasik »
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #125 : 03.11.2017, 20:41:59 »
Переустановить ядро в обновлении джумлы
*

Gogasik

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #126 : 04.11.2017, 00:28:15 »
Делал это несколько раз
в конце правда пишет сообщение
"Предупреждение
Обновить кэш манифеста не удалось: Расширение в настоящее время не установлено."
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #127 : 04.11.2017, 04:26:46 »
Расширения-поиск, доустанавливайте.
Компонент мультиязычности с плагином отключили?
Да и вообще, га стандартном шаблоне с отключенными посторонними расширениями ошибка повторяется.
*

Gogasik

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #128 : 04.11.2017, 23:14:37 »
Расширения-поиск, доустанавливайте.
Не очень понял, что доустанавливать ?
Компонент мультиязычности с плагином отключили?
Отключал
Да и вообще, га стандартном шаблоне с отключенными посторонними расширениями ошибка повторяется.
Пробовал, таже самая ошибка
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #129 : 05.11.2017, 03:41:02 »
Неужели при поиске ни одного расширения не находит, ошибка выше вылазит к примеру, когда удаляют стандартные шаблоны админки.
*

Gogasik

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #130 : 06.11.2017, 00:59:52 »
Неужели при поиске ни одного расширения не находит, ошибка выше вылазит к примеру, когда удаляют стандартные шаблоны админки.

Простите!
Я может не такой продвинутый ....
Я не очень понимаю при поиске ЧЕГО?
Какие расширения?
Расширений, модулей и плагинов особо нет.
На стандартном шаблоне та же самая ошибка
И появляется она ТОЛЬКО когда в админпанели обратится в раздел МЕНЮ
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #131 : 06.11.2017, 02:32:52 »
Менеджер расширений -> Поиск, жмите найти, оно же по ссылке /administrator/index.php?option=com_installer&view=discover
Заодно по ссылке рядом /administrator/index.php?option=com_installer&view=database проверьте фикс бд надо делать или  нет.
*

Gogasik

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #132 : 06.11.2017, 03:03:14 »
Прошу простить!
СТУПИЛ конечно же.
Все сделал как Вы сказали, нашлись какие то не обновленные версии.
Обновил!
Проверил базу, тоже показало что-то не то, ИСПРАВИЛ.
Но результат тот же. ((((
Переключился на тему по дефолту - Таже ошибка что и была ((((
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #133 : 06.11.2017, 04:20:44 »
Включите дебаг и выложите backtrace ошибки
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Re: Вышел релиз Joomla! 3.8.1
« Ответ #134 : 07.11.2017, 10:02:54 »
У меня только баг- при добавлении ID к ссылке site/category/73 , открывается материал с ID=73 ?
При отключенном экспериментальном роутере .
*

vitzer

  • Захожу иногда
  • 303
  • 5 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #135 : 07.11.2017, 10:28:23 »
У меня только баг- при добавлении ID к ссылке site/category/73 , открывается материал с ID=73 ?
При отключенном экспериментальном роутере .
У меня тоже так.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вышел релиз Joomla! 3.8.1
« Ответ #136 : 07.11.2017, 13:35:22 »
У меня тоже так.
ну так вроде ничего нового. всегда вроде так и было. поэтому роутер и переписывают :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Gogasik

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #137 : 07.11.2017, 13:46:20 »
Включите дебаг и выложите backtrace ошибки

Да там столько вылезло....  :o

Спойлер
[свернуть]
*

wishlight

  • Гуру
  • 5051
  • 314 / 1
  • От 300 руб быстрый хостинг. Сервера.
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #138 : 07.11.2017, 13:47:05 »
Никак SEFWizard не напишут...
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #139 : 07.11.2017, 15:12:43 »
Advanced module отключить или обновить
*

Gogasik

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #140 : 07.11.2017, 20:29:48 »
не помогло!
Отключал
Удалял
Обновлял
...

даже попробовал поставить 3.8.2 Joomla
*

gss56

  • Новичок
  • 6
  • 0 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #141 : 07.11.2017, 20:37:17 »
Попробовал обновить до 3.8.2 выдало
Ошибка
COM_INSTALLER_MSG_INSTALL_WARNINSTALLUPLOADERROR
COM_INSTALLER_MSG_WARNINGS_SMALLUPLOADSIZE
До этого обновлялся нормально. Обновлялся с папки tmp. В чем причина
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #142 : 08.11.2017, 03:12:39 »
Может ограничения по размеру файла?
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #143 : 08.11.2017, 05:20:18 »
COM_INSTALLER_MSG_INSTALL_WARNINSTALLUPLOADERROR
COM_INSTALLER_MSG_WARNINGS_SMALLUPLOADSIZE
.htaccess
Код
php_value post_max_size 30M
php_value upload_max_filesize 30M
*

gss56

  • Новичок
  • 6
  • 0 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #144 : 08.11.2017, 06:57:51 »
.htaccess
Код
php_value post_max_size 30M
php_value upload_max_filesize 30M

В какое место в файле вставлять код или без разницы. Можно просто добавить в конце файла. Не приходилось вносить изменения в .htaccess
*

Gogasik

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #145 : 09.11.2017, 02:11:51 »
Разобрался я в чем дело!
и какой модуль (компонент) создавал проблему.
Когда отключаю его, то все работает нормально.
Компонент платный и обновить его сейчас нет возможности, потому что брали с человеком в складчину и человек пропал с оригиналом.
Что можно сделать, чтобы каждый раз не отключать компонент как работать с сайтом?
Читал что то на английских сайтах там со структурой  папок HELPER поменялось или я не правильно понял?
*

KKAAZZOO

  • Живу я здесь
  • 2288
  • 118 / 9
Re: Вышел релиз Joomla\! 3.8.1
« Ответ #146 : 09.11.2017, 08:50:15 »
Gogasik, обсуждение вареза на форуме запрещено.
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужна проф помощь в обновлении Joomla на лок.сервере osp. Можно платно

Автор Fati

Ответов: 0
Просмотров: 34
Последний ответ 16.06.2025, 16:40:04
от Fati
Помогите с БАГом в панели администратора Joomla 3

Автор akteon25

Ответов: 2
Просмотров: 1103
Последний ответ 26.02.2025, 16:41:56
от akteon25
Версии РНР и Joomla 3

Автор Ebelous

Ответов: 8
Просмотров: 2873
Последний ответ 27.01.2025, 20:38:45
от pavelrer
Trouble Upgrading from Joomla 3.8 to 3.9

Автор melissa00

Ответов: 0
Просмотров: 1705
Последний ответ 26.07.2024, 10:03:51
от melissa00
SP polls в Joomla 3.8.2

Автор wawont

Ответов: 2
Просмотров: 3373
Последний ответ 22.02.2024, 21:03:15
от Zegeberg