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

Sulpher

  • Живу я здесь
  • 2126
  • 402 / 16
  • Шаблоны и расширения Joomla
Re: Блог о Joomla по-русски
« Ответ #180 : 08.11.2013, 15:03:10 »
Вот как крик души - YOOtheme анонсировали разработку своей CMS: http://www.pagekit.com

Цитировать
Popular CMS's like WordPress, Joomla and Drupal have grown over the time and it is hard for them to adapt to latest web technologies. They are feature heavy, bloated and have to stick to legacy code to keep compatibility with their large extension ecosystem. It will take a lot of work for them to implement modern design patterns and coding standards like today's popular PHP 5.3+ frameworks do.
Хотя, лично я скептически отношусь к этой разработке немцев с учетом их слабой маркетинговой политики (вот тот же Warp7 - ни roadmap ни сроков релиза, несерьезно. если они перетянут такой подход в свою CMS, это бесмысленная разработка)
*

Aleks.Denezh

  • Живу я здесь
  • 3404
  • 428 / 4
Re: Блог о Joomla по-русски
« Ответ #181 : 08.11.2013, 15:08:44 »
zikkuratvk, SmokerMan +1 просто все это в скором времени может превратиться в трындец как я видел на одном сайте с JoomSocials где на главной странице с 10-ю статичными модулями выполнялось свыше 400 запросов в базу данных!
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Блог о Joomla по-русски
« Ответ #182 : 08.11.2013, 15:12:53 »
По мне так вообще лучше остаться на голой платформе и на ней уже разрабатывать что надо.
Ну так, забирай Joomla Framework и вперед :)

А по сути - пока мы ничего не делаем со своей стороны, все так и будет происходить. Если хотим что-то поменять в Joomla, то надо действовать, а не писать о том, как все плохо и что же делать. Кстати сейчас самое время - Joomla 4 может включать в себя несовместимые с предыдущими версиями изменения.

Я предлагаю - давайте создадим русскоязычную группу разивития Joomla. Делигируем одного/двух человек как представителей идей обсуждений группы, чтоб передавать это дальше в англоязычную часть. Ну вот реально, что русскоязычное сообщество вложило в развитие за последнее время? Я сейчас не говорю про локализацию, а про непосредственный вклад разработчиков? Что нас останавливает? Лень, незнание языка? Ну да, пускай лучше "индусы" развивают, а мы в сторонке постоим... Извините, наболело...
*

Aleks.Denezh

  • Живу я здесь
  • 3404
  • 428 / 4
Re: Блог о Joomla по-русски
« Ответ #183 : 08.11.2013, 15:16:50 »
Я предлагаю - давайте создадим русскоязычную группу разивития Joomla. Делигируем одного/двух человек как представителей идей обсуждений группы, чтоб передавать это дальше в англоязычную часть.
Я только за!

Что нас останавливает? Лень, незнание языка?
именно незнание языка и останавливает.. в школе "учил" немецкий.. английский учить поздно и нет особо на него времени!
*

Sulpher

  • Живу я здесь
  • 2126
  • 402 / 16
  • Шаблоны и расширения Joomla
Re: Блог о Joomla по-русски
« Ответ #184 : 08.11.2013, 15:21:00 »
Дим, насколько мне не изменяет память, подобные попытки были неоднократно предприняты smart'ом года 3-4 назад (как раз начало Joostina), когда хорошие идеи предлагались к реализации core team, но они их игнорировали. С тех пор прошло немало времени, возможно, ситуация изменилась. Но вообще я согласен - делегировать выработанные идеи в Joomla idea pool, почему бы и нет? Вопрос в другом: а есть что-то на повестке дня, что очень нужно нашему сообществу? Я просто не слежу за всеми разделами, если такие идеи есть, то можно их вынести на обсуждение. Что касается политики core team, то тут нужно участвовать в дискуссии на официальном форуме.
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Блог о Joomla по-русски
« Ответ #185 : 08.11.2013, 15:29:49 »
Политика поменялась как раз в 2009 году. Сейчас уже нет core team, есть "Production Leadership Team (PLT): responsible for coordinating the production of the Joomla CMS and Platform, including code, documentation, and localization". А код движется сообществом. PLT может повлиять на включение тех или иных фишек в CMS, но незначительно.
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
Re: Блог о Joomla по-русски
« Ответ #186 : 08.11.2013, 19:20:38 »
рунет не равно world internet
Вот и весь ответ, и заметьте что многие с появлением версии 2.5 уже выросли и перешли, кто на что, но ни как не остались на J, разбираться в её растущих даже не в геометрической прогрессии проблемах, работают с ней потому что знают, что где и как, и вряд ли кто послушает кого то из России, у нас свое видение у них свое, если и услышат то через годы, а это время, и требуется работать в это время, но ни как не ждать.
Полностью согласен с горыничем, Istaan, zikkuratvk еще с того момента как less воткнули, cms должна быть на своей основе и не надо лепить на неё, это не ёлка новогодняя.
*

zikkuratvk

  • Глобальный модератор
  • 4819
  • 345 / 2
  • Обслуживаем проекты - дорого.
Re: Блог о Joomla по-русски
« Ответ #187 : 08.11.2013, 19:50:58 »
А по сути - пока мы ничего не делаем со своей стороны, все так и будет происходить. Если хотим что-то поменять в Joomla, то надо действовать, а не писать о том, как все плохо и что же делать. Кстати сейчас самое время - Joomla 4 может включать в себя несовместимые с предыдущими версиями изменения.
Оно уже известно, что в 4ке будет убито часть API, которое используется в любом мало мальски сложном расширении... альтернативы которые озвучены мне не нравятся... Собственно когда была core team было более менее понятно все... а щас когда начало рулить сообщество получается хрень какая то... Joomla толстеет в ней появляются всякие плюшки аля вородпресс а толку нет.
Хочется уникальное расширение? ===>>>> JoomLine - Разрабатываем расширения под заказ.
Использую хостинг TimeWeb и Reg
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Re: Блог о Joomla по-русски
« Ответ #188 : 08.11.2013, 21:26:44 »
У меня сразу предложение к Диме. Поскольку он самый англоязычный из нас, пусть нас и представляет. Конкретно сейчас есть в Joomla новый компонент  для аякс-запросов к модулям и плагинам, на сколько я видел месяц назад он дырявый, никакой защиты, никаких ограничений. Пусть посмотрят мой аналог http://argens.ru/item/6-ajaxmod и возьмут проверки на вооружение.
*

SmokerMan

  • Гуру
  • 5291
  • 720 / 26
Re: Блог о Joomla по-русски
« Ответ #189 : 08.11.2013, 22:28:04 »
У меня сразу предложение к Диме. Поскольку он самый англоязычный из нас, пусть нас и представляет.
вот и я за это решение. Пусть кто-то берет на себя хотя бы перевод.
Потому что порой когда видишь явный баг со стороны разработчиков мне лень переводить его на инглишь и потом еще отвечать и доказывать чего-то опять таки на инглише что именно это баг.  
Есть у меня, лично, баг репорты, которые висят еще с 1.6 подтвержденными и никто их вообще даже не собирается рассматривать, хотя они имеют место быть.

И этого достаточно что бы отвернуть меня от развития системы в целом. Пусть лепят свой огород я буду лепить свой, подстраиваясь под их "найтивный" код.

Мне вообще пох. Они выпускают новую версию -> клиент обновляется у них чего-то не работает -> естественно клиент бежит ко мне  (это уже аксиома) ) -> Я беру опять бабла с клиента и говорю ему -> А нах было обновляться?
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Re: Блог о Joomla по-русски
« Ответ #190 : 08.11.2013, 23:21:43 »
Ну, ну, ну. Набросились на Диму... Он итак как угорелый переводы строчит на блог, ща еще и представителем будет, так глядишь и из банка выгонят...
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

SmokerMan

  • Гуру
  • 5291
  • 720 / 26
Re: Блог о Joomla по-русски
« Ответ #191 : 08.11.2013, 23:37:30 »
Ну, ну, ну. Набросились на Диму... Он итак как угорелый переводы строчит на блог, ща еще и представителем будет, так глядишь и из банка выгонят...
ну ну!
Дима делает нужные вещи, я не спорю.  Но порой когда их читаешь возникает сомнение, что это сделал авто-переводчик.
тема вообще не про это. А про представительство русских в среде жумла)
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Блог о Joomla по-русски
« Ответ #192 : 08.11.2013, 23:57:08 »
Но порой когда их читаешь возникает сомнение, что это сделал авто-переводчик.
Ну уж извините, пишу как могу. Авто-переводчиком вообще не пользуюсь.

По поводу представительства, я не против. Но я не хочу, чтобы это было в таком виде, на форуме. Я подумаю, как это лучше сделать. Или можеи посоветуете, как нам это организовать?

Потому что порой когда видишь явный баг со стороны разработчиков мне лень переводить его на инглишь и потом еще отвечать и доказывать чего-то опять таки на инглише что именно это баг. 
Есть у меня, лично, баг репорты, которые висят еще с 1.6 подтвержденными и никто их вообще даже не собирается рассматривать, хотя они имеют место быть.
Я честно говоря за то, чтобы самим править баги. Если что-то не можем, то оставляем им. Опять же, надо подумать, как это все сорганизовать.
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Re: Блог о Joomla по-русски
« Ответ #193 : 09.11.2013, 00:06:25 »
Дима давай я поддерживаю
Цитировать
самим править баги
так Неправильно
лучше стань нашим протеже, две мои руки у тебя уже есть  *DRINK*
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Блог о Joomla по-русски
« Ответ #194 : 09.11.2013, 00:07:49 »
Почему неправильно самим исправлять? Если мы знаем, как исправить баг, почему не дать решение? Это значительно ускорит процесс его внесения в CMS!
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Блог о Joomla по-русски
« Ответ #195 : 09.11.2013, 00:08:25 »
Может сделать раздел багрепортов на форуме?
И по каждой теме делать коммит?
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Блог о Joomla по-русски
« Ответ #196 : 09.11.2013, 00:09:09 »
ЗЫ. Я правильно понимаю что есть доступ делать коммиты в ядро?
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Блог о Joomla по-русски
« Ответ #197 : 09.11.2013, 00:10:07 »
Может сделать раздел багрепортов на форуме?
И по каждой теме делать коммит?
Вот, спасибо. Дельное предложение. Что-то подобное можно организовать. Только на форуме это может не совсем удобно?
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Блог о Joomla по-русски
« Ответ #198 : 09.11.2013, 00:12:07 »
Вот, спасибо. Дельное предложение. Что-то подобное можно организовать. Только на форуме это может не совсем удобно?
Отнюдь, на форуме - репорт от любого пользователя, не важно насколько он профи, может даже без решения или с некорректным.
Потом если что поправляем или подтверждаем баг - тему закрыть, коммит отправить.
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Блог о Joomla по-русски
« Ответ #199 : 09.11.2013, 00:12:34 »
ЗЫ. Я правильно понимаю что есть доступ делать коммиты в ядро?
У меня? Не знаю =) Я как бы занимаюсь разработкой JTracker и туда у меня есть доступ комитить. Но обычно это делается через Pull Request, особенно когда это касается правки больших багов. Если что-то по мелочи, то наверное можно было бы делать. Я могу уточнить этот вопрос.
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Блог о Joomla по-русски
« Ответ #200 : 09.11.2013, 00:16:07 »
Лучше уточнить, важный момент.
Я давно пытался репортить напрямую - но там черт ногу сломит, на трекере часто игнорят или делают большие глаза "а что такое SEO? И почему нам не должно быть насрать на него?", плюнул :-)
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Блог о Joomla по-русски
« Ответ #201 : 09.11.2013, 00:24:12 »
Лучше уточнить, важный момент.
Я давно пытался репортить напрямую - но там черт ногу сломит, на трекере часто игнорят или делают большие глаза "а что такое SEO? И почему нам не должно быть насрать на него?", плюнул :-)
Да, с трекером там не очень дела обстоят... Согласен. Поэтому делаем новый - JTracker. Вообщем проверил, нет у меня права напрямую комитить...
*

SmokerMan

  • Гуру
  • 5291
  • 720 / 26
Re: Блог о Joomla по-русски
« Ответ #202 : 09.11.2013, 00:32:55 »
Да, с трекером там не очень дела обстоят... Согласен. Поэтому делаем новый - JTracker. Вообщем проверил, нет у меня права напрямую комитить...
а вот это и хреново)
если у них с трекером так плохо обстоят дела, то что там внутри твориться?)
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Re: Блог о Joomla по-русски
« Ответ #203 : 09.11.2013, 00:38:47 »
Цитировать
то что там внутри твориться
это одному Богу известно. Вообще интересно, чтобы расписали структуру чудного предприятия и кто кому подчиняется на каких условиях и как делят спонсорские. Ибо заглядываясь на версию 4, стоит задуматься и хотя бы понимать, что к чему. Инструмент с такой аудиторией может быть весьма прибыльным. И никто не будет спрашивать у вас о смене правил
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Блог о Joomla по-русски
« Ответ #204 : 09.11.2013, 00:39:28 »
а вот это и хреново)
если у них с трекером так плохо обстоят дела, то что там внутри твориться?)
Имеется ввиду, что тяжело багрепортить. Сам трекер немного тяжелый для понимания + если ты делаешь PR на GitHub должен еще и на трекере создать репорт. Новый трекер решит эту проблему, он будет интегрирован с GitHub.
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Re: Блог о Joomla по-русски
« Ответ #205 : 09.11.2013, 00:41:34 »
Да, с трекером там не очень дела обстоят... Согласен. Поэтому делаем новый - JTracker. Вообщем проверил, нет у меня права напрямую комитить...
А почему в трекер? Репозиторий на GitHub у них не в почете?
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Re: Блог о Joomla по-русски
« Ответ #206 : 09.11.2013, 00:42:39 »
Новый трекер решит эту проблему, он будет интегрирован с GitHub.
А он еще не интегрирован :o Ну тормоза
Я удобнее платформы не представлю для сообщения о багах и коммитах
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

Alldar

  • Завсегдатай
  • 1504
  • 195 / 1
Re: Блог о Joomla по-русски
« Ответ #207 : 09.11.2013, 01:55:25 »
Пул реквест?)
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Re: Блог о Joomla по-русски
« Ответ #208 : 09.11.2013, 07:39:22 »
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Блог о Joomla по-русски
« Ответ #209 : 09.11.2013, 11:17:04 »
Как я уже писал, у меня нет доступа к репо joomla-cms. Поэтому остается только PR ;) Но когда будет новый JTracker (планируем v1 уже в этом году), то PR будет достаточно и не надо будет дополнительно лезть на трекер и там создавать отчет.

Моя идея такая - делаем один общий проект на GitHub, форкаем репу joomla-cms и работаем над ним. Когда что-то пофиксили, я делаю PR. Если нужен сервер с тестовым сайтом, то я без проблем могу предоставить.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Интеграция финансовых блогов и курсов на Joomla

Автор MihaGolovey

Ответов: 0
Просмотров: 474
Последний ответ 12.02.2025, 09:51:53
от MihaGolovey
Телеграм канал о Joomla на английском

Автор Sulpher

Ответов: 1
Просмотров: 1656
Последний ответ 19.04.2024, 13:28:37
от Omaxis
VirtueMart для Joomla 4

Автор Гоша_Компьютерный

Ответов: 0
Просмотров: 2399
Последний ответ 15.08.2022, 12:37:14
от Гоша_Компьютерный
Мысли вслух про Joomla 4

Автор Гоша_Компьютерный

Ответов: 9
Просмотров: 2455
Последний ответ 15.12.2021, 13:51:44
от sergeytolkachyov
Городской портал на Joomla?

Автор User82

Ответов: 3
Просмотров: 2335
Последний ответ 14.12.2021, 14:41:02
от khan-alex