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

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
Re: Интеграция с другими расширениями
« Ответ #30 : 01.08.2013, 16:26:37 »
1. вряд ли. используют модуль слайдера.
2. :) ну в принципе да может кто то и разомнется ;) мало ли :) но в последнее время альтруизм на заказ уже не работает. люди поумнели.
3. не встречал

относительно ГК5.
Это все равно что за хлебом ездить на Камазе.
Зачем такое монстрило для простого вывода пары тройки товаров на главной ?

Может ГК возьмется... ;) Вы у них на форуме не спрашивали ?
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

irc-h

  • Захожу иногда
  • 158
  • 8 / 0
Re: Интеграция с другими расширениями
« Ответ #31 : 01.08.2013, 16:42:58 »
Да, сейчас им пишу как раз, пытаюсь перевести американский-разговорный на английский-читабельный  ^-^

Сам думал над слайдером, но, если верить гавику, то основные плюшки в демо шаблона StoreBox (из за которых я на него и клюнул) сделаны с помощью ГК5.

Цитировать
но в последнее время альтруизм на заказ уже не работает. люди поумнели.
Это я как раз понимаю. Поэтому и написал про вариант с разумным вознаграждением  ;D

Ахха, у меня проездной гавика закончился, а платить 199 $ за гарантированную помощь в моем случае это жлобство.
« Последнее редактирование: 01.08.2013, 18:55:00 от irc-h »
*

sergeosn

  • Захожу иногда
  • 70
  • 0 / 0
Re: Интеграция с другими расширениями
« Ответ #32 : 15.01.2015, 19:14:34 »
Поворошу старую темку.
Подскажите пожалуйста. Хотел интегрировать JComments в карточку товара Joomshoping.
Но вылезли проблемы. Копался, копался, нашел что какимто загадочным образом скрывается код формы
Код
<form id="comments-form" name="comments-form" action="javascript:void(null);">
И убирается именно эта строка, а все содержимое остается.
Т.е. имею форму ввода отзывов/комментариев, но не отрабатывает кнопка "Отправить", т.к. нигде не присутствует вышеописанная форма.
Интегрировал, как описано в этом посте:
Код
<?php
//if ($this->allow_review){
$comments = JPATH_SITE.'/components/com_jcomments/jcomments.php';
if (file_exists($comments)) {
require_once($comments);
print JComments::showComments($this->product->product_id, 'com_jshopping', $this->product->name); }
//}
?>
Также добвил изменил соответсвенно плагин файл.

П.С. Не совсем понятно как вообще этот плагин взаимодействует.У меня Joomla 3
       Искал по форуму вообще решения отзывов в карточке товара, нашел одно с ссылкой на регистраницию на один сайт, где имеется возможность отставления отзывов с соцсетей. Но это не совсем что надо, т.к. необходим конкретный допил комментариев.

Заранее благодарен!
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Re: Интеграция с другими расширениями
« Ответ #33 : 15.01.2015, 19:51:33 »
Просто устанавливается аддон и всё.
http://www.webdesigner-profi.de/joomla-webdesign/shop/addons/integrate-jcomments.html?lang=en
 В чем проблема собственно?
*

sergeosn

  • Захожу иногда
  • 70
  • 0 / 0
Re: Интеграция с другими расширениями
« Ответ #34 : 15.01.2015, 20:16:56 »
Просто устанавливается аддон и всё.
http://www.webdesigner-profi.de/joomla-webdesign/shop/addons/integrate-jcomments.html?lang=en
 В чем проблема собственно?
Это чтото новое, для меня. Не совсем понятно. Можно пожауйста поподробнее?
У меня:
- Joomshoping Version 4.6.0
- Joomla  3.3.6
- JComments 3.0.5

По ссылке Вашей стоит два файла:
Integrate JComments 1.0
Integrate JComments 2.0.2

Какой мне необходим? Скача и установил через Joomshoping - версию 2.0.2
Плюс все изменения с 1го поста. Но в итоге результат такой же, не работает
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Re: Интеграция с другими расширениями
« Ответ #35 : 15.01.2015, 20:21:35 »
Какие изменения, вы смотрели первый пост какого года? А какой сейчас? Просто установить аддон и все, никаких правок файлов не требуется
версия 2.0.2
*

sergeosn

  • Захожу иногда
  • 70
  • 0 / 0
Re: Интеграция с другими расширениями
« Ответ #36 : 15.01.2015, 20:22:52 »
Какие изменения, вы смотрели первый пост какого года? А какой сейчас? Просто установить аддон и все, никаких правок файлов не требуется
Т.е. при моих версиях, я просто доставляю аддон Integrate JComments 2.0.2 через установку в Joomshoping и все?
Сейчас попробую откатиться и попробовать.
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Re: Интеграция с другими расширениями
« Ответ #37 : 15.01.2015, 20:24:45 »
Правильно
*

sergeosn

  • Захожу иногда
  • 70
  • 0 / 0
Re: Интеграция с другими расширениями
« Ответ #38 : 15.01.2015, 21:08:16 »
Откатился. Поставил аддон. Форма появляется для ввода комментария. Но Отправить кнопка не активна, также кнопка Обновить выглядит не так как должна.
Мои подозрения что почему то не прописывается данная строка при формировании страницы:
Код
<form id="comments-form" name="comments-form" action="javascript:void(null);">
и именно в товарах. Т.к. Делал отдельный пункт "Гостевая книга", привязывая к JComments и там все работает.
*

sergeosn

  • Захожу иногда
  • 70
  • 0 / 0
Re: Интеграция с другими расширениями
« Ответ #39 : 15.01.2015, 21:12:18 »
Нашел проблему!
В карточке товараиспользую вкладки(табы). И соответсвенно в табе оно и не работает. Вынес из вкладки просто в карточку товара. Все отлично!
Спасибо, за адон! Буду дальше ковырять!
Плюсую)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Плагин JoomShoppingEMT - интеграция триггерных рассылок

Автор cheryukin

Ответов: 0
Просмотров: 519
Последний ответ 14.04.2020, 15:42:20
от cheryukin
SAP JoomShopping интеграция

Автор shop-user

Ответов: 1
Просмотров: 638
Последний ответ 27.08.2019, 15:48:50
от nevigen
Интеграция Sendpulse с JoomShopping

Автор mister_boy

Ответов: 0
Просмотров: 949
Последний ответ 07.04.2019, 23:10:59
от mister_boy
Интеграция магазина JoomShopping и api

Автор crmlofty

Ответов: 6
Просмотров: 2675
Последний ответ 05.06.2017, 21:27:30
от passer
Интеграция интернет-магазина JoomShopping с 1С (импорт-экспорт данных)

Автор Eugeneer

Ответов: 38
Просмотров: 22250
Последний ответ 06.04.2017, 18:21:19
от CCTRRoman