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

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
теоретически :) не помню точно какие свойства имеют элементы, а глянуть негде сейчас
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Ну... по крайней мере оно работает  ^-^
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
так чего тогда сомневаетесь, раз работает? :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Да потому что это методом тыка. Я так и не понял до конца принципа работы массива. Но так хоть код аккуратный  ^-^
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
А можно сделать запрос чтобы товары из категории брались рандомно, или это лишнее?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
а задачи то какие?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

MichailPickStyle

  • Захожу иногда
  • 65
  • 2 / 0
Всем привет!
А можно сделать запрос чтобы товары из категории брались рандомно
?
Мне вот это тоже интересно)

Можно-ли, используя метод getProducts(array(), null, null, 0, 10), при обновлении страницы получать разный("случайный") набор товаров из этой же категории?
« Последнее редактирование: 23.10.2018, 15:23:19 от MichailPickStyle »
*

MichailPickStyle

  • Захожу иногда
  • 65
  • 2 / 0
Посмотрел метод getBuildQueryOrderListProduct($order, $orderby, &$adv_from) в jtableauto.php и попробовал в метод getProducts(array(), null, null, 0, 10) во второй аргумент "впихнуть" 'RAND()' - на первый взгляд задача решилась.)
Ув. dmitry_stas, подскажите пожалуйста, этим я ничего не нарушил, можно так использовать для решения этой задачи? SQL запрос там сложновато для меня собирается.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
для случайного набора у таблицы товара есть метод getRandProducts($count, $array_categories = null, $filters = array()). так как вы сделали будет работать, но будет очень нагружать базу
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

MichailPickStyle

  • Захожу иногда
  • 65
  • 2 / 0
Сегодня только удалось опробовать. Спасибо dmitry_stas все получилось!
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Можете выложить готовый код того что получилось?
*

MichailPickStyle

  • Захожу иногда
  • 65
  • 2 / 0
Можете выложить готовый код того что получилось?
В файле product_default.php своего шаблона делаю так:
Код
$product = $this->product;
$array_categories[] = $this->category_id;
$products = $product->getRandProducts(9, $array_categories, $filters = array());

9 - кол-во рандомных товаров, мне необходимых
$array_categories[] - массив с id категорий, из которых выбираю товары(в данном случае из одной - той же, из которой товар на странице которого нахожусь)
« Последнее редактирование: 26.10.2018, 17:32:07 от MichailPickStyle »
*

Argawa

  • Захожу иногда
  • 139
  • 1 / 0
Доброго всем здоровья. Очень нужная тема разрастается. Пытался вывести через базу метку, но безрезультатно. Может у кого-то получилось? 
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
[/code]
Пытался вывести через базу метку, но безрезультатно. Может у кого-то получилось?

Код
<?php if ($product->label_id){?>
<?php if ($product->_label_image){?>
<img src="<?php print $product->_label_image?>"/>
<?php }?>
<?php }?>
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
А кто знает как правильно дополнить таким условием <?php if ($product->product_quantity > 0){?>
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
getRandProducts дополнить?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
к сожалению именно запрос никак, filters не понимают наличия. но есть лайфхак :)
Код
$jshopConfig = JSFactory::getConfig();
$hide_product_not_avaible_stock = $jshopConfig->hide_product_not_avaible_stock;
$jshopConfig->hide_product_not_avaible_stock = 1;
$products = $product->getRandProducts(...);
$jshopConfig->hide_product_not_avaible_stock = $hide_product_not_avaible_stock;
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
 ^-^ круто
а нагрузку не увеличит? Просто думаю стоит ли так извращаться
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
абсолютно никак вообще на нагрузку не повлияет
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Работает отлично +
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
вопросы могут возникнуть только в том случае, если есть какие то плагины, которые вмешиваются в выборку случайных товаров, и которым важно реальное состояние опции "Скрывать товары не в наличии". если таковых нет - проблем не будет.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
А можно этот функционал сделать плагином в группе jshoppingproducts и обрабатывать по событию onBeforeDisplayProductView ? Думаю пригодится такое в будущем, чтоб не тратить время на редактирование карточки товара.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
плагином конечно можно, плагином будет самое правильное решение. только onBeforeDisplayProductView не подойдет, там нужно onBeforeQueryGetProductList
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
onBeforeQueryGetProductList
не знал про такую вещь
*

Argawa

  • Захожу иногда
  • 139
  • 1 / 0
[/code]
Код
<?php if ($product->label_id){?>
<?php if ($product->_label_image){?>
<img src="<?php print $product->_label_image?>"/>
<?php }?>
<?php }?>

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

Biss

  • Давно я тут
  • 995
  • 101 / 0
имя метки
Код
<?php print $product->_label_name;?>
*

Argawa

  • Захожу иногда
  • 139
  • 1 / 0
<?php print $product->_label_name;?>
Вот сам код, куда я хочу вставить название метки
Спойлер
[свернуть]

Название нужно вставить в тег label.
*

intcorp

  • Захожу иногда
  • 456
  • 12 / 0
Уточните, пожалуйста, на примере кода Argawa постом выше, как прописать рэндомность товаров, а то выводятся одни и те же товары, одного и того же производителя.
*

Argawa

  • Захожу иногда
  • 139
  • 1 / 0
Уточните, пожалуйста, на примере кода Argawa постом выше, как прописать рэндомность товаров, а то выводятся одни и те же товары, одного и того же производителя.
В запросе randomize
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться