Новости Joomla

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором...

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором...

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором представлены новости, интервью, рецензии и есть небольшой магазин на JoomShopping. Возникла необходимость внутри Joomla статей вставлять упоминание релиза и кнопочку «добавить в корзину». Я взял плагин WT JShopping products anywhere Сергея Толкачева (@webtolkru). Плагин отображает название товара и ссылку. При помощи напильника, ИИ и навыков вёрстки появился Uikit макет для шаблонов на базе Yootheme Pro.Учитываается мобильная версия - телефоны и ipad.Кнопка добавления в корзину работает по Ajax и появляется всплывающее окно (Notification Bar от Uikit) с информацией.Пока это базовый вариант, требующий доведения до лоска, однако он уже работает и его можно применять на проектах.Взять макет можно здесь.А плагин вставки товаров в материалы можно забрать здесь.Приветствуется доведение до ума и оформление в виде PR.

WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla

WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla

👩‍💻 WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla.Пакет плагинов галереи изображений и видео для вставки в материалы и модули Joomla, а так же везде, где работают плагины группы content. Поддержка собственных макетов вывода для галерей. Смешанные фото+видео галереи. Плагин создан как замена Simple Image Gallery и поддерживает синтаксис {gallery}{/gallery}.👩‍💻 v.1.2.3. Что нового?- Обработка вступительного и полного текста для материалов Joomla. Добавлена обработка шорткодов в полном и вступительном текстах материалов Joomla.- Системные требования. Повышены минимальные требования до Joomla 5 и PHP 8.1.- Мелкие правки. Исправлена ошибка работы макета по умолчанию в плагине контента.- Joomla 6. Пакет плагинов успешно протестирован на Joomla 6.Страница расширения.GitHub расширенияJoomla Extensions Directory@joomlafeed#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 Ответов
  • 1875 Просмотров
*

dmitran

  • Новичок
  • 6
  • 0 / 0
Ошибки в пагинации
« : 27.11.2024, 12:52:42 »
В случаях, когда у пользователя много объявлений у меня некорректно работает пагинация на странице автора объявлений http://localhost/component/djclassifieds/profile/55 : в ссылках на следующие страницы списка объявлений отсутствует id автора и получается вместо http://localhost/profile/,55?start=12 некорректная ссылка http://localhost/profile?layout=blog&start=12, при переходе на которую либо просит войти, либо, если вошел, открывается мой собственный профиль, а не профиль автора с ID=55.
Версия компонента 3.10.1
Joomla 5.2.1.
Может какой пункт меню надо создать или это глюк Joomla/компонента?
*

sivers

  • Живу я здесь
  • 2593
  • 360 / 0
Re: Ошибки в пагинации
« Ответ #1 : 27.11.2024, 14:22:26 »
Каким параметром передается ИД автора (в неотсефенной ссылке). Посмотреть можно, если отключить чпу.

Есть вероятность, что у вас проявилась вот эта проблема:
Спойлер
[свернуть]
« Последнее редактирование: 27.11.2024, 14:25:33 от sivers »
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

dmitran

  • Новичок
  • 6
  • 0 / 0
Re: Ошибки в пагинации
« Ответ #2 : 27.11.2024, 23:04:48 »
Вошел на страницу пользователя: https://localhost/?option=com_djclassifieds&view=profile&Itemid=127&uid=55:nina
Ссылка на следующую страницу в пагинации: https://localhost/index.php?option=com_djclassifieds&view=profile&Itemid=127&limitstart=18 , то есть, ID пользователя отсутствует.
Спасибо за ссылку, теперь понятно.
Наверное, мне проще будет развернуть на более ранней версии Joomla, чтобы не творить то, чего не умею )
Остается надеяться, что разработчик выпустит новую версию с исправлением ситуации.
DJ-Catalog для пятерки уже, судя по инфо на сайте, корректно должен работать
*

dmitran

  • Новичок
  • 6
  • 0 / 0
Re: Ошибки в пагинации
« Ответ #3 : 28.11.2024, 10:20:45 »
В файл localhost\libraries\src\Pagination\Pagination.php
добавил строчку
     * @since  5.2.0
     */
    protected $paramsFromRequest = [
        'format'        => 'CMD',
        'option'        => 'CMD',
        'controller'    => 'CMD',
        'view'          => 'CMD',
        'layout'        => 'STRING',
        'task'          => 'CMD',
        'template'      => 'CMD',
        'templateStyle' => 'INT',
        'tmpl'          => 'CMD',
        'tpl'           => 'CMD',
        'id'            => 'STRING',
        'Itemid'        => 'INT',
   'uid'            => 'INT',
    ];


теперь работает
*

sivers

  • Живу я здесь
  • 2593
  • 360 / 0
Re: Ошибки в пагинации
« Ответ #4 : 28.11.2024, 11:37:25 »
Следующее обновление Joomla затрет эту правку. Правильнее было бы добавить строчку во вьюху проблемного компонента.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

dmitran

  • Новичок
  • 6
  • 0 / 0
Re: Ошибки в пагинации
« Ответ #5 : 28.11.2024, 13:13:32 »
Да, Вы правы. Так и сделаю. Буду искать, как правильно оформить строку в файлах view
*

sivers

  • Живу я здесь
  • 2593
  • 360 / 0
Re: Ошибки в пагинации
« Ответ #6 : 28.11.2024, 15:08:28 »
Найдите где создается объект пагинации. Что-то вроде такого:
Код
$this->pagination = new Pagination($total, $limitstart, $limit);
После этой строки допишите:
Код
$this->pagination->setAdditionalUrlParam('uid', $uidValue);
$uidValue - это значение параметра uid, его можно прочитать через $app->input или через $this->state во вьюхе - там поищите его значение.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

dmitran

  • Новичок
  • 6
  • 0 / 0
Re: Ошибки в пагинации
« Ответ #7 : 02.12.2024, 13:21:36 »
Большое спасибо!
Судя по
Код
$uid = $app->input->getInt('uid', 0);
параметром $uidValue надо указывать $uid , но при добавлении строки
Код
$this->pagination->setAdditionalUrlParam('uid', $user->id);
или
Код
$this->pagination->setAdditionalUrlParam('uid', $uid);
при попытке посмотреть страницу профиля автора вылетает ошибка "ERROR 0 - Call to a member function setAdditionalUrlParam() on null in..."

Ради эксперимента добавил строку
Код
echo $uid;
на странице отобразился тот самый id пользователя
*

sivers

  • Живу я здесь
  • 2593
  • 360 / 0
Re: Ошибки в пагинации
« Ответ #8 : 02.12.2024, 13:24:30 »
Похоже, что в месте вызова у вас $this->pagination не инициализирован. можно попробовать добавление этой строки не во вьюхе, а в макете перед выводом пагинации непосредственно
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться