Новости Joomla

Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0

Метод registerListeners() в CMSPlugin в плагинах  планируется удалить в Joomla 7.0

👩‍💻 Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0.Этот метод регистрирует устаревшие слушатели событий в диспетчере, имитируя работу плагинов Joomla! 3.x и ниже для Joomla 4+. По умолчанию этот метод ищет все общедоступные методы, название которых начинается с on. Он регистрирует лямбда-функции (замыкания), которые пытаются преобразовать аргументы отправленного события в аргументы вызова метода и вызвать ваш метод on<Что-то>. Результат передаётся обратно событию в его аргумент result.Теперь этот слой совместимости с устаревшей Joomla 3 помечен к удалению в Joomla 7.0, которая должна выйти осенью 2027 года. Это означает, что те уникальные расширения от Joomla 2.5 / Joomla 3, которые ещё работали на Joomla 4-6 скорее всего окончательно перестанут работать на Joomla 7. Предполагается, что активные разработчики планомерно и постепенно избавляются от технического долга и обновляют свои расширения. @joomlafeed#joomla #разработка #php

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

Mordawkin

  • Новичок
  • 4
  • 0 / 0
Подскажите пожалуйста, где копать?
У меня Joomla! 1.5.22 Stable и VirtueMart 1.1.9
Проблема вот в чем:
В карточке товара корзина с атрибутами отображается вот так:
http://shop.mordawki.ru/katalog.html?page=shop.product_details&flypage=flypage.tpl&product_id=2089&category_id=169
А в этой же категории вот так:
http://shop.mordawki.ru/katalog.html?page=shop.browse&category_id=169
Как сделать одинаковое отображение?

И еще один вопрос по свойствам:
Как сделать чтобы при изменении свойства товара, менялась цена? Заранее спасибо!
*

Mordawkin

  • Новичок
  • 4
  • 0 / 0
По первому вопросу разобрался. Нужно было применить тот же стиль, что был в корзине на странице с подробным описанием. По второму вопросу нашел тоже решение, но возникает одна проблема. При изменении свойства на странице с подробным описанием все работает как надо, а вот при изменении в общей категории изменяются цены и для остальных товаров. Понятно, что в шаблоне прописана одна переменная с ценой и поэтому при изменении в одном месте, она меняется и в других. Подскажите пожалуйста как можно локализовать этот механизм! Найденный код прилагается!

На вкладке «Статус товара» вводим новое свойство «Фасовка». Для нового свойства вводим две особенности: 400 г и 800 г. Выставляем соответствующие цены (со знаком равенства) для каждой особенности и сохраняем изменения.
 
Теперь правим код. Сначала в индексном файле шаблона сайта /templates/шаблон_вашего_сайта/index.php подключим jQuery. Для этого перед закрывающимся заголовочным тегом добавим две строки:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js "></script>
<script type="text/javascript">jQuery.noConflict();</script>

Перед добавлением этих строк стоит убедиться, что библиотека jQuery ещё не подключена.
Теперь отредактируем файл /components/com_virtuemart/themes/default/templates/product_details/includes/addtocart_advanced_attribute.tpl.php. Ищем в файле следующий код (двенадцатая строка):

<option value=""><?php echo $options_item['base_value'] ?> (<?php echo $options_item['sign'].$options_item['display_price'] ?>)</option>
и меняем его на:

<option title="<?php echo $options_item['display_price'] ?>" value="<?php echo $options_item['base_var'] ?>"><?php echo $options_item['base_value'] ?></option>

Затем редактируем ещё один файл: /components/com_virtuemart/themes/default/templates/common/price.tpl.php
Ищем следующую строку:

<?php
if( !empty( $price_info["product_price_id"] )) { ?>

И добавляем прямо после неё следующий код:

<script type="text/javascript">
jQuery(document).ready(function(){
jQuery(".inputboxattrib").change(function () {
jQuery('span.productPrice').replaceWith('<span class="productPrice">'+jQuery(".inputboxattrib option:selected").attr("title")+'</span>');
}) 
});
</script>

Обратите внимание на .inputboxattrib. Это стандартный класс VirtueMart для выпадающего списка свойства товара. Если в вашем магазине используется другой класс, то вставьте его название в код.
На этом всё. Пример можно посмотреть в интернет-магазине «Все штучки».
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Настройки отображения товара

Автор wectra

Ответов: 2
Просмотров: 4463
Последний ответ 12.07.2017, 22:12:27
от wectra
Несколько изображений для товара/ Лупа для изображения/ Magic Zoom

Автор antoha333

Ответов: 41
Просмотров: 26968
Последний ответ 13.11.2015, 16:08:16
от sonics
Описание категории опустить под товары

Автор angelo4ek-001

Ответов: 5
Просмотров: 2355
Последний ответ 12.11.2015, 01:53:39
от fsv
Как реализовать на VirtueMart такую карточку товара?

Автор AdmbVlad

Ответов: 0
Просмотров: 1863
Последний ответ 14.10.2015, 17:01:55
от AdmbVlad
Вставить картинку в карточку товара через URL и создать его миниатюру

Автор sashgera

Ответов: 8
Просмотров: 3214
Последний ответ 14.02.2015, 21:12:46
от sashgera