Новости Joomla

Совет по Joomla: несколько значений по умолчанию в XML-формах для стандартных полей типа list

👩‍💻 Совет по Joomla: несколько значений по умолчанию в XML-формах для стандартных полей типа list.При работе над плагином возникла необходимость указать стандартный набор из нескольких элементов стандартного поля списка. И хотелось указать их в стандартном же атрибуте default для полей. Когда это нужно?Когда Ваши пользователи устанавливают плагин и НЕ заходят в настройки - в коде вы можете использовать значения по умолчанию с помощью класса Registry (писал об этом ранее) и всегда быть уверенным, что хоть какие-то жизненно необходимые параметры к вам придут всегда. 🧐 Но как сделать то же самое для интерфейса админки?Пользователя нужно направлять, предлагать очевидный работоспособный сценарий для начала, а дальше он уже сам разберется. Когда человек заходит в параметры свежеустановленного плагина в Form ещё нет данных и параметры по умолчанию выставляются из атрибутов default в xml-полях.
<field name="showdesc" type="radio"                       label="PLG_CFI_PARAM_SHOWDESC"                       class="btn-group btn-group-yesno"                       default="1">                    <option value="0">JNO</option>                    <option value="1">JYES</option>                </field>
Здесь по умолчанию будет включено "Да". И если пользователь не переключит параметр, то при сохранении мы ожидаемо получим "да" в params плагина.Для поля списков type=&quot;list&quot; можно указать значение по умолчанию и многие знают, что его можно указать только одно.
<field type="list"                       name="article_fields"                       label="article_fields"                       description="article_fields_desc"                       layout="joomla.form.field.list-fancy-select"                       multiple="true"                       default="id"                >                    <option value="id">id</option>                    <option value="title">title</option>                    <option value="alias">alias</option>                    <option value="introtext">introtext</option>                    <option value="fulltext">fulltext</option>                    <option value="state">state</option></field>
Но у нас поле с множественным выбором (атрибут multiple) и хотелось бы указать несколько значений по умолчанию...Оказывается, так можно сделать. Для этого в атрибуте default нужно указать json с нужными параметрами в виде {int}key : {string} value.Например, default='{"0":"id","1":"title"}'.
<field type="list"                       name="article_fields"                       label="article_fields"                       description="article_fields_desc"                       layout="joomla.form.field.list-fancy-select"                       multiple="true"                       default='{"0":"id","1":"title"}'                >                    <option value="id">id</option>                    <option value="title">title</option>                    <option value="alias">alias</option>                    <option value="introtext">introtext</option>                    <option value="fulltext">fulltext</option>                    <option value="state">state</option></field>
⚠️ Обратите внимание на кавычки! Поскольку json_decode не понимает одинарные кавычки собственно json нужно писать с двойными, а значение для атрибута default писать в одинарные.🙏 За подсказанное решение огромное спасибо участникам нашего сообщества - разработчикам Дмитрию Васюкову (@fictionlabs) и Игорю Бердичевскому (@septdir).@joomlafeed#joomla #разработка #webdev #development

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

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Грабли грабельки
« : 04.02.2015, 17:04:31 »
Часто заказчики отказываются делать сложноструктурные сайты на фреймворках. Настаивают на всяческих CMS. Одни на Joomla, другие на MODX. По причине либо низкого бюджета, отсутствия специалистов, отсутствия времени или банально заключённым договором. И естественно уже проделанной частью работы.
Тем не менее далеко не все проекты можно написать на CMS...
А некоторые невозможно и на некоторых фреймворках написать...

Они настаивают и приходится городить грабли



Что делать с такими заказчиками, посылать к другим или делать грабли и костыли?
Всё что не анархия, то фашизм...
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Грабли грабельки
« Ответ #1 : 04.02.2015, 17:06:54 »
Вопрос, как я понял, риторический?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Грабли грабельки
« Ответ #2 : 04.02.2015, 17:11:40 »
Вопрос, как я понял, риторический?

Второй раз подряд уже... Дают такие заказы...
Есть ли на Joomla компонент театра. Где кликаешь по местам.
Нет его нет... Но сама структура предлагает очень сложное решение.
Правда речь будет о MODX а там его точно нет...
Кроме того сама структрура MODX ещё больше мешает чем если была бы Joomla...
Всё что не анархия, то фашизм...
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
Re: Грабли грабельки
« Ответ #3 : 04.02.2015, 17:48:28 »
Вежливо посылать, ставить бюджет адекватный, они сами растворятся в безграничном интернете, ну а если согласятся, то не им уже решать кто на чем будет их заказ выполнять.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Грабли грабельки
« Ответ #4 : 04.02.2015, 17:52:11 »
Тем не менее далеко не все проекты можно написать на CMS...
А некоторые невозможно и на некоторых фреймворках написать...
Можно привести пример таких проектов которые нельзя на фреймворке написать?

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

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Грабли грабельки
« Ответ #5 : 04.02.2015, 18:28:13 »
Повышать свой технический уровень...
Золотые слова.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Грабли грабельки
« Ответ #6 : 04.02.2015, 18:31:28 »
Хм, а что, заказчик прям вот так и говорит: "делаем на модэксе и никак иначе!"? Бред, не считаете? Таких заказчиков сразу куда подальше.
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: Грабли грабельки
« Ответ #7 : 04.02.2015, 18:42:38 »
Зачем куда подальше. Объясняешь, что на фремворке будет стоить N рублей, на Joomla N*2 рублей, на modx N*3 рублей, на Друпал N*4 рублей. Все. Пусть решают или сливаются.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Грабли грабельки
« Ответ #8 : 04.02.2015, 18:55:54 »
Зачем куда подальше. Объясняешь, что на фремворке будет стоить N рублей, на Joomla N*2 рублей, на modx N*3 рублей, на Друпал N*4 рублей. Все. Пусть решают или сливаются.
на самописе n*n-1 рублей
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Re: Грабли грабельки
« Ответ #9 : 04.02.2015, 19:01:10 »
Если у вас хватает знаний сделать «театр», то в чем проблема? Создайте компонент для Joomla и пользуйтесь, а для modx так.... там специально созданы условия, что бы вы сами писали, причем нечем не ограничивают....
Я знаю только то, что ничего не знаю
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Грабли грабельки
« Ответ #10 : 04.02.2015, 19:06:38 »
там специально созданы условия, что бы вы сами писали, причем нечем не ограничивают....
А что в Joomla чем то ограничивают?
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Re: Грабли грабельки
« Ответ #11 : 04.02.2015, 19:12:51 »
А что в Joomla чем то ограничивают?
Не знаю, слабо помню что там к чему.
Я знаю только то, что ничего не знаю
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Грабли грабельки
« Ответ #12 : 04.02.2015, 19:44:03 »
Если у вас хватает знаний сделать «театр», то в чем проблема? Создайте компонент для Joomla и пользуйтесь, а для modx так.... там специально созданы условия, что бы вы сами писали, причем нечем не ограничивают....
А если он даже на Joomla не пускает?
Упёрся в Модкс и всё...
Фишка в том, что как Опенкарт приспособлен для магазинов.
Модекс приспособлен для каталогов.
Магазины на нём делают, но расширениями например Шопкипер. И то при простой архитектуре.
Что то спецефическое, что-то вроде определённого сервиса там не сделать.
А если и сделаешь, то это будет медленнее работать чем даже на Joomla.

Идеально было бы делать на Laravel, но не хотят...
« Последнее редактирование: 04.02.2015, 19:47:20 от dremora »
Всё что не анархия, то фашизм...
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Re: Грабли грабельки
« Ответ #13 : 04.02.2015, 19:52:50 »
А если он даже на Joomla не пускает?
Воля заказчика, что тут скажешь.

Упёрся в Модкс и всё...
Модекс приспособлен для каталогов.
От куда такая информация, на modx создаются сайты любой сложности, повторюсь — любой.

Магазины на нём делают, но расширениями например Шопкипер. И то при простой архитектуре.
Что то спецефическое, что-то вроде определённого сервиса там не сделать.
Или вы не пользовались modx или это было очень давно. Minishop2 (компонент для modx) создает хорошие магазины, гибкая настройка и т. д., честно для Joomla даже пародии на него не было (сейчас не знаю...)

А если и сделаешь, то это будет медленнее работать чем даже на Joomla.
Это миф, посмотрите пример, был мной сделан пару лет назад - podarki-zlatoust.ru
Я знаю только то, что ничего не знаю
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Грабли грабельки
« Ответ #14 : 04.02.2015, 20:03:59 »
Или вы не пользовались modx или это было очень давно. Minishop2 (компонент для modx) создает хорошие магазины, гибкая настройка и т. д., честно для Joomla даже пародии на него не было (сейчас не знаю...)
Как же не пользовался, пользовался с появления REVO активно использую...
Да это безумкина компонент Minishop. Ктож его не знает. Самый известный сайт по модексу.
Просто как то написал на Kohana, и сравнил с прежним сайтом на Модекс. Производительность в 6 раз выше у Коханы. Это без кеширования и оптимизации ещё...
В своё время мне и Django не подошёл, потому что эту админку надо выкидывать и писать своё...
Потому что приложение сложноструктурное.

Тут не в профессионализме дело. Если Windows г-но, то нужно пытатся там поднять Веб-Сервер вместо Linux и говорить что у тебя руки кривые?.
Всё что не анархия, то фашизм...
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Re: Грабли грабельки
« Ответ #15 : 04.02.2015, 20:11:11 »
Ну что тут сказать, если заказчик хочет на modx, так какие варианты? Только если просто не делать. Я лично делаю или одностраничники без всяких движков и тому подобного, или исключительно на modx, другие «лесом».
Я знаю только то, что ничего не знаю
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Грабли грабельки
« Ответ #16 : 04.02.2015, 20:21:08 »
Ну что тут сказать, если заказчик хочет на modx, так какие варианты? Только если просто не делать. Я лично делаю или одностраничники без всяких движков и тому подобного, или исключительно на modx, другие «лесом».
Дак в том то и дело делаю... Просто то что можно делать бекэндом я делаю через jquery.
Смотрю и офигиваю...
Дешевле по трудозатратам, и по много чему, но всё это грабли.
Будет у сервиса 500-1000 посетителей и всё ляжет на брюхо. Потому что не кешируемые сниппеты...
Из-за этого вообще разочаровался в CMS-ках.
Всё что не анархия, то фашизм...
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Re: Грабли грабельки
« Ответ #17 : 04.02.2015, 20:27:39 »
Скорее всего заказчик смотрит на перед, понадобиться ему что то дополнить или изменить.... и вот тогда цена может взлететь диким образом. А если сделать скажем на Joomla, да еще на распространенных компонентах, то и доработка будет в разы дешевле.

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

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Я знаю только то, что ничего не знаю
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Грабли грабельки
« Ответ #19 : 04.02.2015, 20:35:57 »
Скорее всего заказчик смотрит на перед, понадобиться ему что то дополнить или изменить.... и вот тогда цена может взлететь диким образом. А если сделать скажем на Joomla, да еще на распространенных компонентах, то и доработка будет в разы дешевле.
Если имеется в день, то у меня несколько сайтов набирают по 500 и больше в определенные дни, при этом нечего не ложиться, а так же летает.
Скорее нет... Когда заказчик не программист, даже чуть чуть... Он столько наворочает дров, найдёт каких то мальчиков по 13 лет и уверует в портал за 10 тыс. рублей)))
Кстати очень часто так бывает и они потом гадают почему работники неожиданно пропадают...
« Последнее редактирование: 04.02.2015, 20:39:29 от dremora »
Всё что не анархия, то фашизм...
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: Грабли грабельки
« Ответ #20 : 04.02.2015, 21:16:03 »
Ну в принципе под modx расширение можно написать. Но геморройно. Об IDE можно забыть. Нормальном редакторе тоже. git/svn тоже.
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Грабли грабельки
« Ответ #21 : 04.02.2015, 21:21:15 »
Тут не в профессионализме дело. Если Windows г-но, то нужно пытатся там поднять Веб-Сервер вместо Linux и говорить что у тебя руки кривые?.
Windows среди ОС гавно в той же степени, что и Joomla среди CMS. То есть ни разу, при достаточном уровне пряморукости. Вообще, заказчик в своём праве требовать ModX, Drupal, да хоть PHPNuke.
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Грабли грабельки
« Ответ #22 : 04.02.2015, 21:28:27 »
Ну в принципе под modx расширение можно написать. Но геморройно. Об IDE можно забыть. Нормальном редакторе тоже. git/svn тоже.
По любому нужно писать...
И да ещё более геморройно чем в Joomla
Там Extjs ещё и куча всяких организационных вещей.
Суть не совсем в компоненте, а как сочетаются между собой части всего проекта.
Всё что не анархия, то фашизм...
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: Грабли грабельки
« Ответ #23 : 04.02.2015, 23:14:58 »
Windows среди ОС гавно в той же степени, что и Joomla среди CMS.
Вы очевидно никогда не работали с WP или Drupal...
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Грабли грабельки
« Ответ #24 : 05.02.2015, 00:23:51 »
Вы очевидно никогда не работали с WP или Drupal...
Работал. Цитата моя без контекста другой совсем смысл обрела.
Windows среди ОС гавно в той же степени, что и Joomla среди CMS. То есть ни разу…
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться