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

denator

  • Захожу иногда
  • 52
  • 0 / 0
У меня другая проблема, окно на скрине, кривое.  Как это исправить? Подскажите пожалуйста

*

kharol

  • Moderator
  • 1721
  • 217 / 0
Проблема с шаблоном rt_affinity_j15
« Ответ #1 : 22.08.2010, 19:43:17 »
Дайте ссылку на скрин всего экрана... Так сложно судить, что у Вас поджимает эту область
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

denator

  • Захожу иногда
  • 52
  • 0 / 0
Проблема с шаблоном rt_affinity_j15
« Ответ #2 : 23.08.2010, 10:35:00 »
вот полный скрин.  !
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Проблема с шаблоном rt_affinity_j15
« Ответ #3 : 23.08.2010, 10:42:48 »
1) Какая версия компонента JomSocial?
2) Какой шаблон установлен?
3) Попробуйте изменить шаблон на другой (стандратный от компонента, default например), нормализуется отображение?
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

denator

  • Захожу иногда
  • 52
  • 0 / 0
Проблема с шаблоном rt_affinity_j15
« Ответ #4 : 23.08.2010, 10:52:51 »
JomSocial 1.8.7
Шаблон: rt_affinity_j15
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Проблема с шаблоном rt_affinity_j15
« Ответ #5 : 23.08.2010, 11:11:27 »
Дело в том, что шаблон для компонента JomSocial всего шаблона Affinity, на момент выхода, был рассчитан на предыдущие версии JomSocial.
Анонс  Rockettheme от 19 августа 2010г.
Affinity 1.5.14 Update Released
The Affinity Joomla 1.5 template has been updated to version 1.5.14 which contains support for JomSocial 1.8.x and MooTools 1.2.
« Последнее редактирование: 23.08.2010, 11:17:46 от kharol »
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Проблема с шаблоном rt_affinity_j15
« Ответ #6 : 23.08.2010, 16:18:37 »
Проанализировав шаблон, я пришел к выводу, что Рокетс затачивали его либо под себя, либо под англоязычных пользователей, кому не нужно будет адаптировать перевод под шаблон, а длины полей, занятые интерпретированными строками остаются неизменными...
Например Last Login = 10 символов
в нашем переводе: Последнее посещение = 19 символов
в результате чего происходят наезды и смещения
denator, сделайте так:
1) Максимально увеличьте ширину шаблона rt_affinity_j15 в его настройках, например до 990
2) Откройте файл templates/rt_affinity_j15/html/com_community/css/style.css
 найдите в нем строку
body #community-wrap div.center {padding: 15px;}
и замените ее на эту:
body #community-wrap div.center {width: 640px;padding: 5px;}
3) Если этого будет недостаточно, попробуйте заменить текст в переводе, чтобы получилось как то приблизительно так:

4) Если и этого будет недостаточно, либо мало что исправит, Вам нужно будет заняться полностью подгонкой под себя этого style.css


Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

denator

  • Захожу иногда
  • 52
  • 0 / 0
Проблема с шаблоном rt_affinity_j15
« Ответ #7 : 23.08.2010, 18:32:22 »
Помог первый способ. Все стало именно так, как нужно, но тогда едет строка поиска и фотки на главной  >:(
Если это единственный вариант, то лучше уж профиль пусть едет, чем главная, но в любом случае, спасибо за помощь, хотя бы попытались  :(
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Проблема с шаблоном rt_affinity_j15
« Ответ #8 : 23.08.2010, 19:01:00 »
Первый способ это какой? Увеличение шаблона до 990px? Это действие не может решить проблему, а лишь помогает немного отвоевать свободные пиксели для сайта. Увеличьте до 1000... Съедать поле поиска этот способ не может, так как он наоборот делает страницу шире чем стандартное значение для этого шаблона. То есть стандартный размер шаблона с шириной 979px должен отъедать еще больше...
К тому же посмотрите как выглядит у Вас вход для не авторизованных пользователей с предложением зарегистрироваться...!
Ищите что у Вас включено еще в этой позиции...
Способ с правкой CSS - самый верный вариант. Попробуйте поиграть со значениями в файле style.css  со строки 217:
/** Profile View **/                 
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблема с выпадающим меню

Автор Amige

Ответов: 0
Просмотров: 3884
Последний ответ 06.03.2015, 07:29:51
от Amige
Проблема с текстом без пробелов, с выпадающим меню в JomSocial. Можно ли создать категории обсуждени

Автор locustart

Ответов: 2
Просмотров: 2483
Последний ответ 16.11.2011, 21:57:10
от kharol
Есть проблема с изображением цифр при выборе страниц в низу

Автор Vlad1990

Ответов: 4
Просмотров: 1790
Последний ответ 04.11.2011, 10:34:57
от Vlad1990
Проблема с комментариями.

Автор noin

Ответов: 1
Просмотров: 1551
Последний ответ 17.10.2011, 12:38:55
от N2uM
Проблема: Выпадающее меню заходит за поле "опубликовать"

Автор neocraft

Ответов: 7
Просмотров: 2374
Последний ответ 16.08.2011, 14:22:13
от DaVinchy