Новости Joomla

👩‍💻 WT CDEK library v.1.3.0 - обновление PHP SDK для Joomla + CDEK.

👩‍💻 WT CDEK library v.1.3.0 - обновление PHP SDK для Joomla + CDEK.

Небольшая нативная PHP Joomla библиотека для работы с API v.2 службы доставки CDEK. Библиотека представляет собой клиент для авторизации в CDEK API по OAuth, работы с некоторыми методами API: получения ряда данных и расчета стоимости доставки. Поддерживается Joomla 4.2.7 и выше.

В пакет входят:
- библиотека Webtolk/Cdekapi
- системный плагин System - WT Cdek для хранения настроек и AJAX-интеграций
- task-плагин Task - Update WT Cdek data для обновления локальных копий справочников CDEK по расписанию
- web asset с официальным JavaScript-виджетом СДЭК

👉 v.1.3.0. Что нового?
- Полный рефакторинг библиотеки. Библиотека переработана в entity-based API с фасадом Cdek и отдельным слоем запросов. Обратная совместимость не нарушена, поэтому версия библиотеки - 1.3.0.
- Добавлена поддержка новых разделов API СДЭК. Добавлена поддержка новых разделов API СДЭК: webhooks, prealert, печатные формы, payment, passport, reverse, intakes и других сущностей.
- Улучшена интеграция с Joomla.
Улучшена интеграция с Joomla: installer script для layouts, новые поля Joomla Form для тарифов и обновлённые js виджета CDEK.
- документация библиотеки. Все методы библиотеки подробно описаны, а так же текст документации собран в отдельной папке в git репозитории и будет опубликован на сайте.

Библиотека эта нужна для разработчиков, создающих свои расширения для интеграции Joomla и курьерской службы CDEK.

Страница расширения
GitHub расширения

@joomlafeed

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

Autocom

  • Захожу иногда
  • 306
  • 3 / 0
Имеется плагин VM Product Import. Разработчик прекратил поддержку несколько лет назад.
Плагин выводит товар из virtuemarta в статью Joomla используя id товара для идентификации.
Возможно ли изменить плагин с использованием алиаса товара?
Для чего это нужно?
когда я добавляю новые товары, всё нормально им присваиваются новые id и ссылки не меняются.
Но если по какой либо причине, я полностью загружаю в VirtueMart базу товаров заново (с новыми добавленными), то id товаров меняется и ссылки в статьях становятся неверными.
А алиасы не меняются при полной загрузке, т.к. образуются от названия товара.
Прикрепляю код плагина. Не силен в программировании поэтому прошу помощи.
Спойлер
[свернуть]
*

sivers

  • Живу я здесь
  • 2606
  • 361 / 0
Re: Нужна помощь в изменении плагина
« Ответ #1 : 14.04.2021, 13:28:03 »
Для чего это нужно?
Судя по коду, товары можно выводить не только по ID, но и по полю sku (артикул). Попробуйте - может вам и переделывать ничего не надо.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

Autocom

  • Захожу иногда
  • 306
  • 3 / 0
Re: Нужна помощь в изменении плагина
« Ответ #2 : 14.04.2021, 14:01:48 »
Я это тоже видел. Пробовал вместо id указывать алиас.
Не показывает вообще. В настройках плагина тоже нет возможности поменять.
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Re: Нужна помощь в изменении плагина
« Ответ #3 : 14.04.2021, 15:01:49 »
Судя по коду, товары можно выводить не только по ID, но и по полю sku (артикул).
Не вижу в коде, по моему sku пустой из параметров плагина. Только запрос в БД по алиасу товара для получения ИД, и потом использовать ИД
Код
   $regex1   = '/{\s?vmimport\s+(.*?)}/i';         
      if(preg_match_all($regex1,$html,$matches, PREG_SET_ORDER))
      {   
         if((isset($matches[0][0]) && !empty($matches[0][0])) && (isset($matches[0][1]) && !empty($matches[0][1]))){
            $findtext = $matches[0][0];
            $pluginParams = $this->params;
            $params_init = array('id' => $matches[0][1],
                         'sku' => '',
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Re: Нужна помощь в изменении плагина
« Ответ #4 : 14.04.2021, 15:14:28 »
Судя по коду, идентификатор товара можно получить из хештега плагина. Как выводится плагин? если что-то типа {vmimport id=1}, тогда попробуйте написать {vmimport sku = мойалиас}. Смотрел бегло, может не будет работать.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

Autocom

  • Захожу иногда
  • 306
  • 3 / 0
Re: Нужна помощь в изменении плагина
« Ответ #5 : 14.04.2021, 16:13:49 »
Выводится он так. В тексте материала Joomla ставится {vmimport 1761}, где цифра это id товара.
Пробовал вместо этого ставить данные из поля product_sku, например {vmimport bigstar-bs-ir02}.
Не показывает ничего.
*

sivers

  • Живу я здесь
  • 2606
  • 361 / 0
Re: Нужна помощь в изменении плагина
« Ответ #6 : 14.04.2021, 16:31:11 »
Пробовал вместо этого ставить данные из поля product_sku, например {vmimport bigstar-bs-ir02}.
Не показывает ничего.
В коде поиск по sku недопилен. Чтоб работало, попробуйте внести правку вот в этот блок:
Код
$product_id = (int)$userparams['id'];
      if($product_id == 0){
         $sku = $userparams['sku'];
Поменяйте там $sku = $userparams['sku']; на $sku = $userparams['id'];
Должно работать, если у вас нет sku, начинающихся цифрой.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

Autocom

  • Захожу иногда
  • 306
  • 3 / 0
Re: Нужна помощь в изменении плагина
« Ответ #7 : 14.04.2021, 16:39:04 »
Ура! Заработало! Огромное спасибо. Вроде работает.
Потестирую дальше.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться