Новости Joomla

Вышли релизы безопасности Joomla 6.1.3 и Joomla 5.4.8

Релиз безопасности Joomla 6.1.3 и Joomla 5.4.8

Проект Joomla! рад сообщить о выходе Joomla 6.1.3 и Joomla 5.4.8. Это релизы безопасности и исправления ошибок для серий 5.x и 6.x.

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

Joomla 5+ пакет для интеграции с API Почты России: нормализация данных, расчёт доставки, создание отправлений, партии, документы, возвраты, поиск отделений, справочники и SOAP-отслеживание.

v.3.0.0. Что нового?
Это дальнейшее развитие ранее закрытой Joomla-библиотеки для работы с API сервиса Отправка (для бизнеса) Почты России. Поэтому версия не 1.0.0, а 3.0.0.

Сейчас эта библиотека ушла от собственных реализаций и стала Joomla-обёрткой известного PHP SDK от Lapay Group.

Возможности библиотеки.
- получение настроек аккаунта, точек сдачи и текущего остатка запросов к API;
- нормализация адресов, ФИО и телефонов перед созданием отправления;
- расчёт тарифа и срока доставки;
- создание, поиск, изменение, удаление и возврат заказов в состояние «Новые»;
- проверка надёжности получателя;
- создание партий, просмотр партий и заказов внутри партии;
- генерация пакета печатных документов и формы Ф103;
- создание, изменение и удаление возвратных отправлений;
- поиск отделений по индексу, адресу и координатам, получение сервисов отделения;
- локальный список стран;
- SOAP-отслеживание операций по РПО и работа с билетами пакетного трекинга.

👩‍💻 Joomla-возможности.
В пакете библиотеки WT Otpravkapochtaru есть поля Joomla Form для расширений. Они позволяют работать в интерфейсе Joomla с некоторыми типами данных, получаемых по API из вашего личного кабинета в ЛК Почты России для бизнеса.
На данный момент в библиотеке доступны 3 поля списков, которые отображают доступные в аккаунте ОПС, типы и категории отправлений.
Поддерживаются зависимые списки: значение одного поля обновляется при изменении другого.

Системные требования.
Системные требования в основном связаны с системными требованиями апстрима библиотеки - LapayGroup PHP SDK.
- Joomla 5+
- PHP 8.3+
- Расширения PHP:
-- ext-mbstring
-- ext-simplexml
-- ext-soap (опционально, для трекинга)
-- ext-zip

Ссылки:
- Страница расширения
- GitHub библиотеки и документация

@joomlafeed

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

igordyak67

  • Новичок
  • 3
  • 1 / 0
Уважаемые господа!

Перерыл ВСЁ! Требуется помощь, так как в интернете полного решения вопроса нет.

Суть в том, что в VM2 в связке с Joomla 2.5 изначально не выдавалась ошибка 404 при вводе некоректных URL типа: site.ru/asfasff, а перенаправляло на главную. С категориями товаров и главной страницей, вроде задачу решил путём вставки:

в /components/com_virtuemart/virtuemart.php, на строке 111, вместо

Код
$mainframe->redirect(JRoute::_ ('index.php?option=com_virtuemart&view=virtuemart', FALSE));

Данный код:

Код
JError::raise(E_ERROR,'404','Not found');
      $mainframe->close();

Но возник главный вопрос:

ЕСЛИ ТОВАР БЫЛ УДАЛЁН, ТО ПРИ ПЕРЕХОДЕ ПО ЕГО URL ССЫЛКА ПРЕОБРАЗУЕТСЯ В
site.ru/название_категории?error=404


Всё бы ничего, но мало того, что не выдаётся страница ошибки 404, поисковик получает неправильный сигнал 303. Начал смотреть решения в интернете, но таковых не оказалось, только поверхностно разбирались темы.

Вопрос с выдачей страницы error 404 решил, но сигнал всё равно передаётся неправильный.
Сделал следующее:

В templates\шаблон\html\com_virtuemart\category\default.php
Добавил после строки defined ('_JEXEC') or die('Restricted access'):

Код
$input = JFactory::getApplication()->input;
if($input->getInt('error', 0) === 404)
{
JError::raise(E_ERROR,'404','Not found');
    $mainframe->close();
}

Так как программирование знаю поверхностно, даже это далось с большим трудом. Моя задача всё-таки заставить выдавать сигнал поисковику error 404, при переходе на удалённый товар.

ПРИЛАГАЮ ИЗОБРАЖЕНИЕ С ТАКОЙ ЖЕ ПРОБЛЕМОЙ. На нём видно, что по ссылке /женская_одежда/штаны?error=404 находился товар, который ранее располагался по адресу /женская_одежда/штаны/товар

Форумчане, возможно кто-то сталкивался с таким вопросом, я уже потерял надежду решить его.

*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
А так, в лоб,
Код: php-brief
ob_end_clean();
header("HTTP/1.0 404 Not Found");
include '404.php';
exit();
не катит?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

igordyak67

  • Новичок
  • 3
  • 1 / 0
Протестировал, предложенный вариант, выводит белый экран, категории перестают работать.
В варианте, который я описал страница 404 выдаётся, но выдаётся сигнал 303 на странице site.ru/категория/удалённый_товар и перенаправляет на site.ru/категория?error=404 при этом уже выдаётся ошибка 404. Интересно как сделать, чтобы на странице site.ru/категория/удалённый_товар сразу выдавалась 404.

Код
В templates\шаблон\html\com_virtuemart\category\default.php
Добавил после строки defined ('_JEXEC') or die('Restricted access'):

Код:

$input = JFactory::getApplication()->input;
if($input->getInt('error', 0) === 404)
{
JError::raise(E_ERROR,'404','Not found');
    $mainframe->close();
}
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Протестировал, предложенный вариант, выводит белый экран
А 404.php существует?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

igordyak67

  • Новичок
  • 3
  • 1 / 0
Файл error.php существует стандартный, в папке с шаблоном. Возможно стоит в моём случае прописать такой код:
Код
ob_end_clean();
header("HTTP/1.0 404 Not Found");
include 'error.php';
exit();

Я так понял его нужно поместить вместо

Код
$input = JFactory::getApplication()->input;
if($input->getInt('error', 0) === 404)
{
JError::raise(E_ERROR,'404','Not found');
    $mainframe->close();
}

или заменить в /components/com_virtuemart/virtuemart.php, на строке 111?

вместо
Код
JError::raise(E_ERROR,'404','Not found');
      $mainframe->close();

Ваш код говорит
Если заголовок HTTP/1.0 404 Not Found, то выдавай error.php. Правильно?

Если нет, нужно ли что-то добавлять к данному коду типа if($input->getInt('error', 0) === 404)

Благодарю за проявление интереса к моему вопросу.
« Последнее редактирование: 04.12.2015, 11:32:55 от igordyak67 »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Ваш код говорит
Если заголовок HTTP/1.0 404 Not Found, то выдавай error.php. Правильно?
Нет, он просто отправляет код 404 и заодно показывает error.php, без каких-либо условий.
Не будь паразитом, сделай что-нибудь самостоятельно!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Расчёт стоимости товара в VirtueMart за периметр

Автор NIKOLY

Ответов: 0
Просмотров: 4352
Последний ответ 04.07.2025, 09:18:31
от NIKOLY
VirtueMart 3 Отображать только товары в наличии!

Автор GaziroFFka

Ответов: 4
Просмотров: 7594
Последний ответ 06.06.2023, 13:55:13
от Akeksandr
SP VirtueMart Category Search

Автор ve1006

Ответов: 10
Просмотров: 15893
Последний ответ 18.01.2023, 10:39:10
от AzMandius
Как вывести ID товара в описании товара?

Автор Stasweb

Ответов: 8
Просмотров: 6821
Последний ответ 28.11.2022, 23:22:27
от Evgen Kulibin
Как вывести модуль в страницу VirtueMart?

Автор harddrop

Ответов: 11
Просмотров: 13172
Последний ответ 13.11.2022, 13:11:37
от Evgen Kulibin