Новости Joomla

Вышел плагин социальных кнопок для Joomla - JL Like 5.1.0

Вышел плагин социальных кнопок для Joomla - JL Like 5.1.0

Вышел плагин социальных кнопок для Joomla - JL Like 5.1.0.JL Like — современный плагин для Joomla, который добавляет стильные кнопки "Поделиться" и счетчики лайков популярных соцсетей. Не использует внешние скрипты, что обеспечивает максимальную скорость и безопасность.👩‍💻 v.5.1.0. Что нового?Виджет предварительного просмотра- Добавлен интерактивный предпросмотр социальных кнопок в админ панели- Живое обновление настроек в реальном времени- Переключение между мобильным и десктопным видомУлучшенная мобильная поддержка- Оптимизированные размеры кнопок для мобильных устройств- Адаптивные стили для лучшего отображения на смартфонах- Touch-friendly интерфейсСовременная архитектура- Внедрена система Web Assets для Joomla 4/5- Оптимизированная загрузка ресурсов с атрибутом defer- Улучшенная производительностьТехнические улучшения- Добавлен новый метод getBaseUri() для лучшей обработки URL- Обновлена поддержка JoomShopping и ZOO компонентов- Улучшена совместимость с Joomla 5.xСкачать релиз с GitHubСтраница расширения@joomlafeed#расширения

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+)

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+)

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

<?php // Это файл в /layouts/components/com_component/your_layout.php ?> <input type="hidden" name="task" value=""> <input type="hidden" name="return" value="<?php echo $input->getBase64('return'); ?>"> <input type="hidden" name="forcedLanguage" value="<?php echo $input->get('forcedLanguage', '', 'cmd'); ?>"> <?php echo HTMLHelper::_('form.token'); ?>

Начиная с Joomla 5.3 добавлен новый способ добавления таких полей (их называют control fields) - программно. И теперь это можно сделать просто в Controller / View.

<?php // В Controller/View добавляем поля $this->form ->addControlField('task', '') ->addControlField('return', $input->getBase64('return', '')) ->addControlField('forcedLanguage', $forcedLanguage);

А в layout'е просто используем метод

renderControlFields()

<?php // В layout формы echo $this->form->renderControlFields();

Многие компоненты ядра уже используют этот подход. Соответствующий PR был принят в Joomla 5.3 осенью 2024г.

Смотреть Pull Request

JoomGallery 4.1.0 - компонент галереи изображений для Joomla

JoomGallery 4.1.0 - компонент галереи изображений для Joomla

Новая итерация компонента продолжает развиваться, ведь с v.4.x компонент был переписан практически с нуля.

v.4.1.0. Что нового?

Редактирование метаданных изображений. Теперь метаданные можно не только читать, но и напрямую редактировать и записывать обратно в изображение JPG. Поддерживаются данные EXIF ​​и IPTC.

Полная совместимость с Joomla! 4.x, 5.x и 6.x. Компонент почистили от устаревших методов в коде.

Заметно ускорили загрузку больших галерей. Списки в админке, особенно для очень больших галерей ( >30 000 изображений), теперь загружаются значительно быстрее.

Несколько сеток lightGallery на одной странице. Будь то плагины контента или модули изображений: теперь вы можете отображать несколько галерей или категорий на одной странице без каких-либо ограничений.

Множество мелких исправлений ошибок и оптимизаций.

Сайт проекта

GitHub расширения

Скачать

0 Пользователей и 1 Гость просматривают эту тему.
  • 0 Ответов
  • 1875 Просмотров
*

xenongattz

  • Новичок
  • 4
  • 0 / 0
Всем привет!

Работаю на связке Joomla 2.5.14 + VirtueMart 2.0.18a.

Столкнулся с препятствием..
Задача состоит в том, чтобы настроить цели в Яндекс.Директе.

Имеется 3 цели, которые необходимо создать в Я.Д:
1) Клиент нажал кнопку "В козину";
2) Клиент нажал кнопку "Оформить заказ";
3) Клиент нажал кнопку "Заказать обратный звонок".

Основная соль состоит в том, что нужно добавить уникальный параметр к целевой странице.
С этим сложности и возникли.

По-порядку, логика моих рассуждений:
=============
1) Кнопка "В корзину" расположена в карточке товара. Вот код формы, в которой находится эта кнопка (файл /components/com_virtuemart/views/productdetails/tmpl/default_addtocart.php):

Код
<form method="post" class="product js-recalculate" action="<?php echo JRoute::_ ('index.php'); ?>[b]?ya_do=addtocart[/b]">
// код перед.....
<span class="addtocart-button">
<?php echo shopFunctionsF::getAddToCartButton ($this->product->orderable);
// в сгенерированном HTML-коде это выглядит так:
// <input type="submit" name="addtocart" class="addtocart-button" value="В корзину" title="В корзину">?>
</span>
// код после.....
</form>

То есть мы имеем кнопку Submit, при нажатии на которую выполняется действие action="...".
Идея была в том, что при нажатии на нее, к ссылке в адресной строке добавлялась бы строка "ya_do=addtocart" (в коде выше выделена жирным шрифтом), которая бы идентифицировала нажатие на эту кнопку для Яндекс.Директа.

Однако, на практике получается, что на сайте включен стандартный джумловский SEF и, соответственно параметр не добавляется.
Более того, когда я отключил SEF, чтобы проверить работает ли без него, то понял, что не работает: по умолчанию, при нажатии на кнопку "Добавить в корзину" выводится всплывающее окно, где можно увидеть добавленный товар и выбрать - либо "Перейти в корзину", либо "Продолжить покупки", а вид ссылки при этом не изменяется.
=============
2) Далее, нажатие на кнопку "Оформить заказ", которое происходит в корзине.
Соответственно, открываю "Инспектор кода" в браузере и нахожу строки:

Код
<div class="checkout-button-top">
<a class="vm-button-correct" onclick="validForm();">Заказать доставку</a>
</div>

Это наша целевая кнопка, нажатие на которую необходимо отслеживать.

Далее, открываем /components/com_virtuemart/views/cart/tmpl/default.php и находим нужные строки:
Код
<form method="post" id="checkoutForm" name="checkoutForm" >
// код перед.....
<?php echo '<a class="vm-button-correct"  onclick="validForm();">Заказать доставку</a>';//$this->checkout_link_html;?>
// код после.....
</form>

Тут мы имеем уже JS-скрипт, которые обрабатывает нажатие.
Его код находится в файле /components/com_virtuemart/views/cart/tmpl/default_pricelist.php

Тогда модификацию ссылки нужно производить в этом скрипте, по логике вещей..
=============
3) Еще одна кнопка, нажатие на которую нужно отследить, вставлена в модуль и материал. Имеет такой код:

Код
<div class="ask-a-question">
<a  class="modalZakaz" >Заказать обратный звонок</a>
<!--<a class="ask-a-question modal" rel="{handler: 'iframe', size: {x: 700, y: 550}}" href="<?php echo $this->askquestion_url ?>"><?php echo JText::_('Заказать обратный звонок')?></a>-->
</div>

Когда нажимаем на эту кнопку, то появляется модальное окно, где вбиваем все данные, однако нажатие в этом окне на кнопку "Отправить" (там как и в случае 1, используется <form> с <input type="button">), также не меняет ссылку в адресной строке.
=============
Из сих измышлений и задач, вытекает вопрос: как добиться от Joomla добавление уникального параметра в состав адресной строки с включенным SEF?

Мои знания PHP и JS не позволяют разобраться как решить эти задачи, поэтому буду благодарен за помощь!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Сортировка По наличию товара - сначала По убыванию в VirtueMart

Автор rsn

Ответов: 7
Просмотров: 3528
Последний ответ 10.04.2025, 01:19:37
от strongest
Блокировка спама в форме &quot;Задать вопрос по товару&quot; VirtueMart 3-4 средствами PHP

Автор aleks_yug

Ответов: 2
Просмотров: 1942
Последний ответ 30.08.2023, 11:37:41
от aleks_yug
Доработать VirtueMart 3

Автор eclipseggg

Ответов: 1
Просмотров: 5887
Последний ответ 01.10.2021, 19:28:53
от varX
Как в RSS ленту VirtueMart 3 добавить дополнительные изображения товара?

Автор Slava77

Ответов: 2
Просмотров: 3146
Последний ответ 06.06.2021, 01:12:01
от Slava77
[Решено] Список товаров на главной VirtueMart

Автор vitoxa_ya

Ответов: 6
Просмотров: 10287
Последний ответ 21.10.2020, 23:27:08
от alfa212