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

Cathelen

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Дорогие форумчане, срочно нужна Ваша помощь!

Заполняла описание категорий, после изменения описания у меня вывод категорий нарушился. А именно вид последних категорий уменьшился и все последние категории разместились в тоненькие столбцы http://svadebnoe-kupit.ru/svadebnye-platya

Помогите решить проблему!

Сайт рабочий, нужно срочно исправить((((((
*

Schumaker

  • Захожу иногда
  • 92
  • 4 / 0
По четыре фотки в ряду. Шесть рядов. Там, где есть описания - изменилась высота картинки за счет добавления текста (описания). Это то, что я сейчас увидел в FF 34. "Тоненьких" не вижу. Может другой браузер их иначе преподносит, но других на этом компе у меня нету, поэтому ничего не могу про них сказать. Или уже "срочно исправлено" ?
*

Cathelen

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
По четыре фотки в ряду. Шесть рядов. Там, где есть описания - изменилась высота картинки за счет добавления текста (описания). Это то, что я сейчас увидел в FF 34. "Тоненьких" не вижу. Может другой браузер их иначе преподносит, но других на этом компе у меня нету, поэтому ничего не могу про них сказать. Или уже "срочно исправлено" ?

Сделала бэкап, все востановила. Но проблема не решена. Т.е. когда я добавляю описание в категорию VirtueMart то краткое описание на странице категорий выводится как попало, где в 4 сроки, где вообще весь текст, поэтому все скачет пляшет. Идеально было бы сделать так, чтобы описание в категории было внизу страницы, а в списке категорий, чтобы оно вообще не выводилось.

Но не знаю, как это сделать? Подскажите, пожалуйста!

Предполагаю, что с этим кодом что-то сделать нужно

<?php // Product Short Description
if (!empty($product->product_s_desc)) {
?>
<p class="product_s_desc">
<?php echo shopFunctionsF::limitStringByWord ($product->product_s_desc, 40, '...')?>
</p>
<?php } ?>
*

Schumaker

  • Захожу иногда
  • 92
  • 4 / 0
Попробую перевести...
1. >...Идеально было бы сделать так, чтобы описание в категории было внизу страницы

Т.е., например в этой категории "San Patric" (http://svadebnoe-kupit.ru/san-patrick) описание должно быть внизу страницы. Так?
Но я на этой странице вижу под всеми фотографиями (внизу страницы) вот это:
"San Patrick огромный выбор свадебных платьев для Вас. Французские кружева и идеальный крой."
Это разве не описание?

2. >... а в списке категорий, чтобы оно вообще не выводилось.

То есть на странице http://svadebnoe-kupit.ru/svadebnye-platya под фотографиями не должно быть подписей (они же - описание категории). Так?
Если угадал, то да, вы правы, надо лезть в файл VirtueMart, который выводит список категорий и подредактировать скрипт.
Какой файл и какие строки не уточняю, т.к. надо быть уверенным, что правильно понят вопрос.
*

Cathelen

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
То есть на странице http://svadebnoe-kupit.ru/svadebnye-platya под фотографиями не должно быть подписей (они же - описание категории). Так?
Если угадал, то да, вы правы, надо лезть в файл VirtueMart, который выводит список категорий и подредактировать скрипт.
Какой файл и какие строки не уточняю, т.к. надо быть уверенным, что правильно понят вопрос.

[/quote]  Да, вы верно меня поняли. Первый момент с описанием категории внизу страницы у меня уже реализован, важно чтобы это описание никуда не делось при удалении подписей под фотографиями.

*

Cathelen

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
То есть на странице http://svadebnoe-kupit.ru/svadebnye-platya под фотографиями не должно быть подписей (они же - описание категории). Так?
Если угадал, то да, вы правы, надо лезть в файл VirtueMart, который выводит список категорий и подредактировать скрипт.
Какой файл и какие строки не уточняю, т.к. надо быть уверенным, что правильно понят вопрос.

Да, вы верно меня поняли. Первый момент с описанием категории внизу страницы у меня уже реализован, важно чтобы это описание никуда не делось при удалении подписей под фотографиями.
*

Schumaker

  • Захожу иногда
  • 92
  • 4 / 0
>...важно чтобы это описание никуда не делось при удалении подписей
Не денется.
Если до утра никто не подскажет, завтра кину ;)
*

Cathelen

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
>...важно чтобы это описание никуда не делось при удалении подписей
Не денется.
Если до утра никто не подскажет, завтра кину ;)

Спасибо, буду ждать!
*

Schumaker

  • Захожу иногда
  • 92
  • 4 / 0
Что-то я не уточнил сразу... надо было хотя бы версию VirtueMart и про установленные шаблоны магазина для приличия спросить...
Ну в общем, сейчас посмотрел VM2.6.
Отображение списка категорий товаров для шаблона по умолчанию, в моем случае, находится здесь:
../components/com_virtuemart/views/virtuemart/tmpl/default_categories.php

Строки после коммента
Код
//Show category
<div> ... </div>

Но в этом шаблоне не предусмотрен вывод описания категории. Здесь только ее наименование и картинка (если есть).
По аналогии с этим шаблоном нужно поискать в вашем.
*

Cathelen

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Что-то я не уточнил сразу... надо было хотя бы версию VirtueMart и про установленные шаблоны магазина для приличия спросить...
Ну в общем, сейчас посмотрел VM2.6.
Отображение списка категорий товаров для шаблона по умолчанию, в моем случае, находится здесь:
../components/com_virtuemart/views/virtuemart/tmpl/default_categories.php

VM2.0 шаблон sj-jare 2.5

в ../components/com_virtuemart/views/virtuemart/tmpl/default_categories.php у меня такой код.

// Show Category
       ?>
       <div class="category floatleft<?php echo $category_cellwidth . $show_vertical_separator ?>">
           <div class="spacer">
          <h2>
              <a href="<?php echo $caturl ?>" title="<?php echo $category->category_name ?>">
    <?php echo $category->category_name ?>
             <br />
       <?php
       if (!empty($category->images)) {
      echo $category->images[0]->displayMediaThumb("", false);
       }
       ?>
              </a>
          </h2>
           </div>
       </div>
   <?php
   $iCategory++;     но что с ним делать понятия не имею.


и в components/com_virtuemart/views/category/tmpl/default.php есть такой код
<p class="product_s_desc">
<?php echo shopFunctionsF::limitStringByWord ($product->product_s_desc, 140, '...')?>
</p>
*

Schumaker

  • Захожу иногда
  • 92
  • 4 / 0
>...шаблон sj-jare 2.5
Тогда нужно поискать подобие default_categories.php в папках этого шаблона. Тот файл, который я Вам указал, идет с магазином в стандартной конфигурации. У вашего шаблона (sj-jare) есть свои аналогичные папки. Поэтому копать надо в их недрах.
По этой причине редактировать те файлы, фрагменты которых Вы привели - не имеет смысла.

*

Cathelen

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
>...шаблон sj-jare 2.5
Тогда нужно поискать подобие default_categories.php в папках этого шаблона. Тот файл, который я Вам указал, идет с магазином в стандартной конфигурации. У вашего шаблона (sj-jare) есть свои аналогичные папки. Поэтому копать надо в их недрах.
По этой причине редактировать те файлы, фрагменты которых Вы привели - не имеет смысла.

Не сильна я вообще в этих кодах, поэтому совсем не понимаю, что мне искать нужно?
коды для //Show category

Простите меня за незнания(((


*

Schumaker

  • Захожу иногда
  • 92
  • 4 / 0
Вы не поверите, но скачал SJ и пробую запустить =\
только из уважения к вашему ассортименту )... и админу
*

Schumaker

  • Захожу иногда
  • 92
  • 4 / 0
Кажется нашел...
./корень_сайта/templates/sj-jare25/html/com_virtuemart/categories/default.php  line 95

Идет после тега
<p class="product_s_desc">

В строке 95 после <?php ставим пробел и //
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

При выводе списка категорий не выводятся изображения самих категорий

Автор chtec95

Ответов: 3
Просмотров: 2480
Последний ответ 30.09.2022, 17:11:54
от marksetter
Модуль SJ Filter for VirtueMart - только 30 custom fields

Автор Alex_gs

Ответов: 0
Просмотров: 2424
Последний ответ 08.08.2022, 15:09:59
от Alex_gs
Изображения в модуле категорий mod_virtuemart_category

Автор Tref_mast

Ответов: 13
Просмотров: 7730
Последний ответ 04.08.2020, 03:05:04
от Damarkuzz
Решено: Валютный знак рубля в VirtueMart 2

Автор frostwar

Ответов: 10
Просмотров: 11532
Последний ответ 07.04.2020, 15:50:54
от liberator
Как вывести модуль в витрине VirtueMart?

Автор Дмитрий_76

Ответов: 1
Просмотров: 2810
Последний ответ 09.02.2020, 10:06:17
от AlexB