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

Volna

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Вопрос-ответ на Joomla 3
« : 03.04.2019, 13:53:03 »
Всем привет!
С помощью чего можно сделать страницу вопрос-ответ на Joomla 3?

Функционал не сложный:
1. вопросы списком, при клике на вопрос он разворачивается и там ответ

компонент SM FAQ устанавливал с ошибкой, при создание вопроса выдает сообщение что такой алерт уже существует (пробовал разные)
*

Technic

  • Захожу иногда
  • 194
  • 7 / 0
Re: Вопрос-ответ на Joomla 3
« Ответ #1 : 03.04.2019, 14:00:05 »
обычный аккордеон
или спойлер
<details>
<summary>Мой заголовок</summary>
  <p>Содержание спойлера</p>
</details>
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Re: Вопрос-ответ на Joomla 3
« Ответ #2 : 03.04.2019, 14:07:26 »
компонент SM FAQ устанавливал с ошибкой, при создание вопроса выдает сообщение что такой алерт уже существует (пробовал разные)
SM FAQ версия 1.7.3.3 , Joomla 3.9.4
Вопрос в админке создался без ошибок
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Вопрос-ответ на Joomla 3
« Ответ #3 : 03.04.2019, 14:08:31 »
здра.
если вопросов подразумевается много и ответы - развернутые, то лучше обычным блогом категории с небольшой правкой шаблона блога.
_https://mramorix.ru/informatsiya/vopros-otvet

если вопросов не много и они не большие по объему, то можно модулем обойтись.

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

Volna

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Вопрос-ответ на Joomla 3
« Ответ #4 : 03.04.2019, 14:12:13 »
обычный аккордеон
или спойлер
<details>
<summary>Мой заголовок</summary>
  <p>Содержание спойлера</p>
</details>
Нужен обычный аккордеон без добавления вопросов пользователями. Но вот в я совсем не программист не скажете поподробнее куда внести данный код 
*

Volna

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Вопрос-ответ на Joomla 3
« Ответ #5 : 03.04.2019, 14:16:39 »
https://mramorix.ru/informatsiya/vopros-otvet

Хочу что бы получилось как ту и вопросы такие же https://happywear.ru/faq
*

Volna

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Вопрос-ответ на Joomla 3
« Ответ #6 : 03.04.2019, 14:21:16 »
SM FAQ версия 1.7.3.3 , Joomla 3.9.4
Вопрос в админке создался без ошибок


Ставил именно его что то не хочет работать   
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Re: Вопрос-ответ на Joomla 3
« Ответ #8 : 03.04.2019, 14:28:41 »
Ставил именно его что то не хочет работать
Для получения помощи опишите ошибку или что не получается. Вот пример, перенесенного мной с Joomla 1.5.
*

Technic

  • Захожу иногда
  • 194
  • 7 / 0
Re: Вопрос-ответ на Joomla 3
« Ответ #9 : 03.04.2019, 14:35:20 »
Нужен обычный аккордеон без добавления вопросов пользователями. Но вот в я совсем не программист не скажете поподробнее куда внести данный код
обычный html5
делаете модуль тип HTML
и туда
сколько надо таких блоков
ну и стилей им подпихнуть какие вам надо
*

Volna

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Вопрос-ответ на Joomla 3
« Ответ #10 : 03.04.2019, 14:36:31 »
SM FAQ[/quot



Ошибка: 1054 - Unknown column 'i.language' in 'on clause' SQL=SELECT c.id, c.asset_id, c.access, c.alias, c.checked_out, c.checked_out_time, c.created_time, c.created_user_id, c.description, c.extension, c.hits, c.language, c.level, c.lft, c.metadata, c.metadesc, c.metakey, c.modified_time, c.note, c.params, c.parent_id, c.path, c.published, c.rgt, c.title, c.modified_user_id, c.version, CASE WHEN CHAR_LENGTH(c.alias)!= 0 THEN CONCAT_WS(':', c.id, c.alias) ELSE c.id END as slug,COUNT(i.`id`) AS numitems FROM #__categories as c LEFT JOIN (SELECT cat.id as id FROM #__categories AS cat JOIN #__categories AS parent ON cat.lft BETWEEN parent.lft AND parent.rgt WHERE parent.extension = 'com_smfaq' AND parent.published != 1 GROUP BY cat.id) AS badcats ON badcats.id = c.id LEFT JOIN #__categories AS s ON (s.lft < c.lft AND s.rgt > c.rgt AND c.language in ('ru-RU','*')) OR (s.lft >= c.lft AND s.rgt

токую ошибку выдает при создание Категории
« Последнее редактирование: 03.04.2019, 14:39:32 от Volna »
*

Technic

  • Захожу иногда
  • 194
  • 7 / 0
Re: Вопрос-ответ на Joomla 3
« Ответ #12 : 03.04.2019, 14:43:32 »
нафиг вам компонент для одной маленькой страницы?
себолд ещё поставьте!  ;D
плагин спойлера
https://extensions.joomla.org/extensions/extension/authoring-a-content/content-construction/contentspoiler/
так а нафиг плагин тогда?)))
чистый код выше)))
*

Volna

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Вопрос-ответ на Joomla 3
« Ответ #13 : 03.04.2019, 14:48:05 »
так а нафиг плагин тогда?)))
чистый код выше)))

Чистый код конечно лучше но я его не смогу самостоятельно прикрутить к  нему стили
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Re: Вопрос-ответ на Joomla 3
« Ответ #14 : 03.04.2019, 15:03:18 »
Код
Ошибка: 1054 - Unknown column 'i.language'
А Joomla актуальная- 3.9.4 ? Такой столбец есть в таблице _categories
Сайт не многоязычный ?
SM FAQ отсюда ?
« Последнее редактирование: 03.04.2019, 15:12:48 от draff »
*

Volna

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Вопрос-ответ на Joomla 3
« Ответ #15 : 03.04.2019, 15:41:37 »
нафиг вам компонент для одной маленькой страницы?
себолд ещё поставьте!  ;D
плагин спойлера
https://extensions.joomla.org/extensions/extension/authoring-a-content/content-construction/contentspoiler/


Установил «pb_spoiler» но не могу сообразить как сделать что бы он в материалах  стал отображаться  *ОХ-Х-Х*
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Вопрос-ответ на Joomla 3
« Ответ #16 : 03.04.2019, 16:03:36 »
как все плохо. кто тут хотел товарища программированию учить?  ;D

go to Extensions-Plugins menu and enable the "Content - Spoiler HTML for articles" plugin.
The plugin is ready to use.

How to use the plugin in the article
All you need to do is to put the following markup into your Joomla! article:
{spoiler}text inside the spoiler{/spoiler}

расширенный вариант
{spoiler spoilerID,Click me to open,Click me to close}text inside the spoiler{/spoiler}
*

Volna

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Вопрос-ответ на Joomla 3
« Ответ #17 : 03.04.2019, 16:10:46 »
Re: Вопрос-ответ на Joomla 3
« Ответ #16 : Сегодня в 16:03:36 »

Извиняюсь я перепутал название палгина  LVSpoiler установил его. Все сделал по инструкции как указано тут https://lessons-24.ru/vebmaster/sajt-s-nulya-na-joomla/plaginy-dlya-joomla-3/plagin-lvspoiler-spojler-dlya-joomla-3.
 
На видео показано что он автоматически появляется в материалах. А у меня не появляется. Помогите настроить 
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Вопрос-ответ на Joomla 3
« Ответ #18 : 03.04.2019, 16:42:55 »
если с JED переходили, то там неправильное расширение на сайте
спойлер тут
https://argens.ru/en/component/ars/repository/lazy-velo-spoiler?Itemid=127
а вы поставили, судя по всему, конструктор контента  ;D
*

varX

  • Живу я здесь
  • 2465
  • 141 / 5
  • разработка компонентов
Re: Вопрос-ответ на Joomla 3
« Ответ #20 : 04.04.2019, 03:00:53 »
Хочу предложить QuickForm 3 в качестве интерфейса "вопрос - ответ" для сложных многоуровневых случаев.

Сразу замечу, что топикстартеру вариант, наверное, не подойдет, судя по теме. Так как без знания CSS, нормально с QuickForm работать не получится. Но тем кто будет искать решение, наверняка пригодится. Выглядит это как на странице http://juice-lab.ru/dev/components/28-quickform-2-generator-form-s-zavisimymi-polyami-i-kalkulyatorom. Там есть определитель минералов с выбором условий, и затем итоговой информацией. Это полноценный определитель, который включает все известные на Земле минералы. Добраться до любого можно в несколько кликов. Легко понять, как это можно использовать в данном случае.

Чтобы вписать в QuickForm 350-ти страничную книгу, понадобилось полтора дня копи - паст, что на мой взгляд, быстро. Тема QuickForm 3 на форуме QuickForm 3 - конструктор простых и сложных форм
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

Volna

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Вопрос-ответ на Joomla 3
« Ответ #21 : 04.04.2019, 08:24:20 »
если с JED переходили, то там неправильное расширение на сайте
спойлер тут
https://argens.ru/en/component/ars/repository/lazy-velo-spoiler?Itemid=127
а вы поставили, судя по всему, конструктор контента  ;D

Все получилось. Установил этот плагин все работает большое спасибо 
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Компонент для Joomla 4 Менеджер Мета Тегов

Автор azm1n

Ответов: 2
Просмотров: 563
Последний ответ 09.05.2025, 11:30:21
от azm1n
Ищу расширение 301 редиректов для Joomla 4

Автор azm1n

Ответов: 1
Просмотров: 465
Последний ответ 04.05.2025, 22:41:05
от azm1n
Расширения для Joomla для просмотра анонимно историй в Instagram

Автор bgh97079

Ответов: 0
Просмотров: 704
Последний ответ 24.12.2024, 19:47:43
от bgh97079
Телефонный справочник для Joomla 4

Автор kunsaid

Ответов: 2
Просмотров: 2267
Последний ответ 28.06.2023, 17:35:43
от kunsaid
Где взять корзину для Joomla 4 Joomshoping 5

Автор oleg1015

Ответов: 2
Просмотров: 2296
Последний ответ 13.04.2023, 22:45:28
от sergeytolkachyov