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

SergeyVitruk

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
Добрый день, разбираясь в возможностях JomSocial наткнулся на одну проблему, как для меня впервые работающего с Joomla показалась тяжелой, не могу понять как тип профиля JomSocial привязать к определенном пункту меню, у меня будет порядка 10 разных профилей пользователей, кто сталкивался с этой проблемой, прошу отписаться, буду очень благодарен!
*

SergeyVitruk

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
этой проблеме нет решения, или некто не знает ответа?
*

SergeyVitruk

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
Ребята, тема еще актуальная, если есть у кого идеи (решения) прошу помочь, все мои способности уже исчерпаны!
*

SergeyVitruk

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
Как не странно, даже на форуме поддержке JomSocial не знают решения этой проблемы, неужели никто с этим не сталкивался?
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Лично я до сих пор не понял чего ИМЕННО Вы хотите добиться и как это должно функционировать.
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

SergeyVitruk

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
Попытаюсь подробнее обьяснить. У меня интернет-портал (база) для: фотографов, моделей, актеров, агентств и т.д. При регистрации человек выбирает себе тип профиля, к примеру он выбрал профиль "фотограф", зарегистрировался, все супер...на сайте есть еще 100 человек под разными профилями, заходит какой-то левый человек на сайт, ему надо найти к примеру актера, и что бы он не искал через поисковик выбирая кучу опций что бы его найти, он просто нажимает вкладку меню актеры, и попадает в соцсеть где находятся только все пользователи с профилем "актеры", смысл думаю понятен, к каждому пункту меню привязать соответствующий тип профиля, зайдите на сайт и посмотрите верхнее меню, и я думаю все станет понятно, какое есть меню, такие и будут аналогичные типы профилей! www.artfashion.com.ua
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Вы в курсе для чего нужен пункт меню "Списки участников" ?
Это по идее и есть фильтр отобранных по каким то критериям групп пользователей. Попробуйте. Лично я не игрался с этим.
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

SergeyVitruk

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
Вы в курсе для чего нужен пункт меню "Списки участников" ?
Это по идее и есть фильтр отобранных по каким то критериям групп пользователей. Попробуйте. Лично я не игрался с этим.
Я то вижу что он там есть, вот не как не могу догнать как его создавать!
*

kharol

  • Moderator
  • 1721
  • 217 / 0
Вообще он странно сделан.
"Наделайте" кучу поисков по разным критериям (как администратор из фронтенда)
Каждый вариант поиска сохраните как фильтр.
Автоматически будет создан пункт меню в main_menu Joomla с "обозванным фильтром"
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

SergeyVitruk

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
как администратор из фронтенда
извините, а это как? и еще вопрос, поисковики с жумсоциал?
*

kharol

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

SergeyVitruk

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
Сами то поняли, свой вопрос?
понял, спасибо, сейчас буду пробовать, почти тож самое мне ответили на форуме поддержки, вот их ответ:
I see. Thanks for explaining.

I could think of something similar like this: http://www.jomsocial.com/support/docs/item/866-how-to-setup-memberlist.html

when you described your requirement above. It looks like you're building a directory of profiles, rather than a community or profile-driven site itself. Or I am missing something here?


Перевод:
Я вижу. Спасибо за объяснения.

Я мог бы придумать что-нибудь подобное, как это: http://www.jomsocial.com/support/docs/item/866-how-to-setup-memberlist.html

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

kharol

  • Moderator
  • 1721
  • 217 / 0
:) Хороший перевод...
На самом деле он сказал Вам следующее:
Цитировать
Я понял. Спасибо  за объяснения.
Мне кажется Вы пытаетесь сделать что-то подобное: http://www.jomsocial.com/support/docs/item/866-how-to-setup-memberlist.html, исходя из того, что Вы описали ранее.
Видимо, Вы создаете каталог профилей, а не сообщества или динамическое распределение профилей на сайте. Или я ошибаюсь?
Чтобы сказать "спасибо" достаточно нажать на "+"
Чтобы сделать бухгалтерскую проводку "спасибо" реквизиты: R192102130372, ЯД:41001768818003
*

SergeyVitruk

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
Хороший перевод...
ну что Google перевел...)))
*

SergeyVitruk

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
а как понять динамическое распределение профилей на сайте?
это типа страница с перечнем всех пользователей определенного типа профиля?
*

kharol

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

SergeyVitruk

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
Как я понял имеется в виду момент, когда пользователь заполняя профиль, автоматически распределяется в определенный тип профилей
ну оно и так есть, когда человек хочет зарегистрироваться на сайте, в первую очередь он попадает на страницу с выбором типа профиля, а дальше он проходит полную регистрацию, заполняя только те поля которые отмечены для этого типа профиля, поля же для каждого профиля разные. Но вот как привязать этот тип к определенном разделу меню, я понять не могу, что то у меня с этими поисковиками нечего не получается! Я уже готов денег заплатить что бы настроили мне полностью JomSocial с написанием личного шаблона!
*

kharol

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

nike-popov

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
Вы в курсе для чего нужен пункт меню "Списки участников" ?
Это по идее и есть фильтр отобранных по каким то критериям групп пользователей. Попробуйте. Лично я не игрался с этим.
Спасиба, разобрался. Только не знаю будут ли списки пополняться? Сейчас то они пустые. В смысле если я сохраняю фильтр поиска в момент пока он пустой в будущем он будет пополнятся новыми пользователями или он будет отображать тех кто был на момент сохранения фильтра?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Видео загружаемые в группу чтобы добавить к себе кнопкой на страницу профиля

Автор powerful888

Ответов: 0
Просмотров: 4878
Последний ответ 08.07.2020, 20:48:09
от powerful888
Пропала кнопка "сохранить" в окне редактирования поля профиля в админке

Автор mrmagic

Ответов: 8
Просмотров: 4959
Последний ответ 09.07.2016, 19:47:40
от xxxALUKARDxxx
Как создавать поля для профиля?

Автор ingavr

Ответов: 0
Просмотров: 1844
Последний ответ 02.11.2014, 04:13:37
от ingavr
Алиас (url) профиля

Автор vantal

Ответов: 1
Просмотров: 1530
Последний ответ 11.03.2014, 20:54:21
от k0styan
Ограничение пользователей по типу профиля

Автор Zhaslan

Ответов: 0
Просмотров: 1356
Последний ответ 12.05.2013, 11:50:34
от Zhaslan