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

kharol

  • Moderator
  • 1721
  • 217 / 0
1) Это чистая установка? То есть на сайте еще пока ничего нет кроме JomSocial?
Нужно посмотреть firebug-ом, что там за div влез некорректно.
2) Почему ставите не последнюю версию компонента?
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

AnVik

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
1)да! чистая установка. самую первую установил JomSocial и он сразу же с таким косяком был (((
а что за "firebug-ом" где его смотреть?
2)что вы имеете в виду? я вроде на чистую Joomla установил компонент jomsocial  самым первым
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Последняя версия компонента JomSocial 2.2.4 и JomSocial 2.2.5 beta2
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

AnVik

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
у меня Joomla 1.5 на нем поставил JomSocial v1.6.285
*

AnVik

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
пробовал несколько последних версий... они не устанавливаются (((( да и до этого я много пытался установить JomSocial, но только одна установилась!
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Купите лицензионную версию компонента и остановитесь в своих поисках.
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

AnVik

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
наверное вы правы! спасибо! подумаю)))может все таки и куплю)))
*

BrusSENS

  • Новичок
  • 6
  • 0 / 0
Вообще возможно сделать перемещение системных блоков? Понимаю что не бесплатно, поэтому спрошу, сколько это будет стоить?
*

roscostreet

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Ребят видел такой плагин для джумсошиал, называется anycode , типа любой скрипт вставляет в компонент на место модульной позиции, кто нибудь пробовал? я поставил, у меня ничего не изменилось и не произошло, подскажите..
*

rosljk

  • Новичок
  • 2
  • 0 / 0
  НАДЕЮСЬ МНЕ ЗДЕСЬ ПОМОГУТ  !
Я не могу понять, как мне из ЭТОГО ОБЫЧНОГО ШАБЛОНА

сделать этот красивый :(

 !  НАДЕЮСЬ МНЕ ЗДЕСЬ ПОМОГУТ  !

Связь со Мной: admin@vsevo.16mb.com
*

Vikitos

  • Захожу иногда
  • 133
  • 1 / 0
  • Упал ,споткнулся, поднимись и иди дальше!
Всё работает JS 1.6.288   :D

Все слышали я думаю про позиции модулей в социалке:
js_side_top    
js_side_bottom    
js_profile_top
js_profile_bottom
js_profile_side_top
js_profile_side_bottom
js_profile_feed_top
js_profile_feed_bottom
js_groups_side_top
js_groups_side_bottom
Их надо вводить ручками в позицию ЛЮБОГО ОБЫЧНОГО модуля....


Спасибо! подкорректировал на JomSocial 2.0.6 усе работает  :D
Спойлер
[свернуть]
« Последнее редактирование: 24.01.2015, 16:37:20 от Vikitos »
*

arturk

  • Захожу иногда
  • 105
  • 11 / 2
ребята! я вернулся. jooomla 3 JomSocial 3.
проблема!
нет модулей вывода новостей и объявлений групп, помогите найти
мой сайт http://vpervouralske.ru/
*

ademar

  • Новичок
  • 2
  • 0 / 0
В templateDetails.xml прописал позиции модулей из JomSocial 
Вот, например для левой колонки:

Код
<position>js_side_top</position>
<position>js_side_top_stacked</position>
<position>js_side_bottom</position>
<position>js_side_bottom_stacked</position>
<position>js_side_frontpage_top</position>
<position>js_side_frontpage_top_stacked</position>
<position>js_side_frontpage</position>
<position>js_side_frontpage_stacked</position>
<position>js_side_frontpage_bottom</position>
<position>js_side_frontpage_bottom_stacked</position>

Для остальных пишите в ссылке ?tp=1 смотрите и вписывайте.
Заработает.
Можно будет оперировать как обычными модулями
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Ошибки после установки JomSocial.

Автор DKsN

Ответов: 80
Просмотров: 24766
Последний ответ 06.03.2016, 23:55:31
от Amigos
Отображение города | решение

Автор Nevzoral

Ответов: 0
Просмотров: 3594
Последний ответ 08.02.2015, 20:42:22
от Nevzoral
Как включить отображение обсуждений в группах?

Автор ingavr

Ответов: 1
Просмотров: 3959
Последний ответ 09.12.2014, 17:00:59
от ingavr
[Решено] JomSocial Как перенести правую колону (обо мне, последние группы, кто в сети и т.д.) с прав

Автор galemus

Ответов: 15
Просмотров: 7611
Последний ответ 29.11.2014, 23:43:36
от ingavr
Делаем адекватное меню в JomSocial.

Автор nolimits4web

Ответов: 38
Просмотров: 28604
Последний ответ 11.11.2014, 17:19:49
от kasper9820