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

SFE

  • Захожу иногда
  • 68
  • 0 / 0
На странице ссылка на предыдущий товар, как добавить в нее артикул предыдущего товара?

вот кусок кода отвечающий за вывод ссылки на предыдущий товар, взят отсюда views/productdetails/tmpl/default.php

<?php
if (!empty($this->product->neighbours ['previous'][0])) {
$prev_link = JRoute::_('index.php?option=com_virtuemart&view=productdetails&virtuemart_product_id=' . $this->product->neighbours ['previous'][0] ['virtuemart_product_id'] . '&virtuemart_category_id=' . $this->product->virtuemart_category_id);



echo JHTML::_('link', $prev_link, $this->product->neighbours ['previous'][0]
['product_name'],
array('class' => 'previous-page'));

}
?>


ну и собственно артикул текущей страницы выглядит так:

<?php echo $this->product->product_sku ?>

помогите советом, не могу разобраться
*

SFE

  • Захожу иногда
  • 68
  • 0 / 0
ни у кого нет идей? до сих пор не могу разобраться.
где присваивается значение элементу массива $this->product->neighbours ['previous'][0]['product_name']?
ну то есть в приведенном мной коде оно просто выводится, без присваивания значений. откуда VirtueMart знает, что в этом элементе хранится имя продукта?

если знать где оно присваивается, то вписать еще один элемент надо, насколько я понимаю по типу $this->product->neighbours ['previous'][0]['product_sku'] и ему присвоить значение переменной $this->product->product_sku.

пожалуйста помогите, кто разбирается, укажите хотя бы примерное направление где копать
*

artserge

  • Захожу иногда
  • 118
  • 11 / 0
В зависимости от версии VM правки чуть чуть отличаются... в общем - лезем в модель продукта administrator\components\com_virtuemart\models\product.php

Ищем метод
public function getNeighborProducts

Там добавляем в селекте недостающее поле, т.е. product_sku,  из нужной таблицы (#__virtuemart_products).

В последнем VirtueMart выборка ID товара и названия идет просто из `#__virtuemart_products_' . VMLANG . '`  , поэтому таблицу #__virtuemart_products необходимо джойнуть к основному запросу.

Если тяжело разобраться - скиньте код метода getNeighborProducts сюда. Подскажу :)

p.s. традиционно отмечу, что данное решение является "хаком" и затрется при обновлении VM. Есть еще способ получить по ID товара его sku - вызывать метод getProductSingle класса VirtueMartModelProduct непосредственно в вашем шаблоне товара views/productdetails/tmpl/default.php , который нужно переопределить в директории темплейта дизайна сайта. При этом обновление VirtueMart не затрет ваш переопределенный шаблон. Но данное решение будет бить по ресурсам, в отличии от варианта с правкой SQL.
Также можно определить простую функцию, использующую API Joomla для бд, в шаблоне views/productdetails/tmpl/default.php , например GetProductSkuById, в которую передавать аргументом ID товара, а на выходе иметь нужный заветный product_sku. Это будет противоречить логике проектирования и разработки, но вариант будет работать, ценой +1 запроса к базе. "Зато не затрется".
« Последнее редактирование: 09.04.2014, 04:54:02 от artserge »
*

Максим Пишняк

  • Давно я тут
  • 837
  • 35 / 0
В артикулы впишите названия, в названия впишите артикулы.
*

SFE

  • Захожу иногда
  • 68
  • 0 / 0
artserge вот код, подскажите, если не сложно
Спойлер
[свернуть]
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Код: php-brief
foreach ($neighbors as &$neighbor) {

         $q = 'SELECT `l`.`virtuemart_product_id`, `l`.`product_name`, `p`.`product_sku`
Код: php-brief
echo JHTML::_('link', $prev_link, $this->product->neighbours ['previous'][0]
['product_name'].'-'.$this->product->neighbours ['previous'][0]
['product_sku']
Но это не очень хорошо, все сотрется при обновлении.
« Последнее редактирование: 10.04.2014, 18:39:04 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

SFE

  • Захожу иногда
  • 68
  • 0 / 0
Спасибо, теперь навигация выглядит как надо =)
и вопрос по обновлениям - переопределить ведь просто надо, ну то есть файлы компонента VirtueMart скопировать в папку HTML шаблона.
выходит затрутся изменения только в файлике administrator\components\com_virtuemart\models\product.php?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Не совсем. Старых функций могут не быть, и способов вывода тоже.
Не будь паразитом, сделай что-нибудь самостоятельно!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор NIKOLY

Ответов: 0
Просмотров: 4352
Последний ответ 04.07.2025, 09:18:31
от NIKOLY
Как вывести ID товара в описании товара?

Автор Stasweb

Ответов: 8
Просмотров: 6821
Последний ответ 28.11.2022, 23:22:27
от Evgen Kulibin
Joomla 3 + VM + Universal AJAX Live Search - как вывести картики товара в поиске?

Автор PSN

Ответов: 10
Просмотров: 11888
Последний ответ 27.03.2022, 17:29:00
от Evgen Kulibin
Как сделать - Вывод модуля на всех страницах - Кроме в карточке товара?

Автор artem_wrong

Ответов: 15
Просмотров: 5515
Последний ответ 15.02.2022, 15:07:34
от beliyadm
При сохранении товара слетает категория

Автор klara7

Ответов: 7
Просмотров: 4592
Последний ответ 23.12.2021, 08:45:40
от klara7