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

SV911

  • Новичок
  • 2
  • 2 / 0
При работе интернет магазина www.hlopok.com.ua  и переходе с 1С 7.7 на 8.2 - изменились все ID товаров и категорий.
И при этом в Google чудесно был проиндексирован сайт.
Virtuemart при заходе с Google выдавал сообщение, мол
Цитировать
Ошибка: Извините, но запрошенный товар не найден!

Дабы убрать с индекса и правильно как то оформить подобные высказывания со стороны VirtueMart в инете ничего не нашлось, кроме платного плагина обработки 404 ошибки.
Поковырявшись 10 минут.

Вопрос был решен:

Открываем файлик administrator\components\com_virtuemart\html\shop.product_details.php
Код
// Redirect back to Product Browse Page on Error
if( !$db_product->next_record() ) {
$vmLogger->err( $VM_LANG->_('PHPSHOP_PRODUCT_NOT_FOUND',false) );
return;
}

И добавляем одну строчку:

Код
// Redirect back to Product Browse Page on Error
if( !$db_product->next_record() ) {
$vmLogger->err( $VM_LANG->_('PHPSHOP_PRODUCT_NOT_FOUND',false) );
header('HTTP/1.x 404 Not Found');
return;
}

Теперь поисковики получают ответ 404 на отсутствующий товар.
Может кому пригодится.
*

kreker92

  • Захожу иногда
  • 390
  • 18 / 0
Вот это, мне кажется, решение получше.
http://kitoraga.com/blog/stranicza-404-i-virtuemart-2.html
Все вопросы и предложения на почту.
*

fsv

  • Moderator
  • 2784
  • 412 / 2
Вот это, мне кажется, решение получше.
1) ваша ссылка про VM2.0. Это ветка VM1.1
2) в VM2 уже починили
Веб-разработка: заказ. Только новая разработка.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

VirtueMart - SMS уведомления о сделаном заказе.

Автор bork

Ответов: 42
Просмотров: 23536
Последний ответ 26.07.2021, 22:11:25
от Oleg91
Отчеты и статистика для VirtueMart

Автор 4kict

Ответов: 25
Просмотров: 10530
Последний ответ 14.01.2021, 00:09:53
от gartes
IceVmCart - новый бесплатный модуль корзины для VirtueMart

Автор Grig2009

Ответов: 105
Просмотров: 54472
Последний ответ 05.02.2017, 11:44:02
от Super_Panda
Модуль недавно просмотренные товары для VirtueMart 1.1.X

Автор aleks_yug

Ответов: 97
Просмотров: 28659
Последний ответ 25.10.2016, 15:03:07
от Igoritaly
Хаки для убыстрения VirtueMart (уменьшение запросов и т.п.)

Автор yadrinez

Ответов: 197
Просмотров: 82286
Последний ответ 05.02.2016, 21:53:34
от flyingspook