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

devirus

  • Захожу иногда
  • 140
  • 6 / 0
Допустим, есть класс, там метод.
Там определяется переменная $orderbyq.
Затем вызывается плагин, но нужная переменная туда не передается. Возможно ли ее переопределить в плагине, чтобы она переопределилась и в родителе?

Проще будет в коде понять :)

controllers/category.php
Код
class JshoppingControllerCategory extends JControllerLegacy{
  function view(){
    $orderbyq = getQuerySortDirection($order, $orderby);
    $dispatcher->trigger( 'onBeforeDisplayCategory', array(&$category, &$sub_categories) );
    ...
  }
}

плагин
Код
function onBeforeDisplayCategory(&$category, &$sub_categories){
    $orderbyq = "DESC";
}

такой смысл в общем... и контроллер дальше работает с переопределенной переменной.

Так возможно или если в плагин не передается нужных переменных - придется вызывать его позже и дублировать там код контроллера с новой переменной?
« Последнее редактирование: 21.06.2014, 17:34:21 от devirus »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Сменить значение переменной
« Ответ #1 : 20.06.2014, 23:13:00 »
к сожалению (или к счастью, смотря с какой стороны смотреть), переопределить в плагине можно только то, что ему дают переопределить
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: Сменить значение переменной
« Ответ #2 : 20.06.2014, 23:44:31 »
Прикольно. Ну попробуйте
Код: php
$orderbyq = $dispatcher->trigger( 'onBeforeDisplayCategory', array(&$category, &$sub_categories) );
var_dump($orderbyq);
Код: php
function onBeforeDisplayCategory(&$category, &$sub_categories){
   return "DESC";
}
Может и сработает.
Только чем это будет отличаться от прямого присвоения?
Код: php
$orderbyq = "DESC";
Только тем, что сгоняли в соседний город, чтобы переобуться?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Сменить значение переменной
« Ответ #3 : 21.06.2014, 00:50:29 »
так суть же в том, что менять контроллер нельзя
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

devirus

  • Захожу иногда
  • 140
  • 6 / 0
Re: Сменить значение переменной
« Ответ #4 : 21.06.2014, 12:00:20 »
Да, верно, суть в том чтоб не менять исходный код, а то в прошлый раз кучу всего переправил, теперь обновляться боюсь.

Проблему решил без плагина, в шаблоне, не знаю насколько рационально, но работает :)
Нужна была сортировка "по убыванию цены", "по возрастанию цены", "по новинкам" и "по популярности" в выпадающем селекте.

Код
$mainframe = JFactory::getApplication();
$order = $mainframe->getUserStateFromRequest('order', 'order', $this->config->product_sorting, 'int');
$orderby = $mainframe->getUserStateFromRequest( $context.'orderby', 'orderby', $jshopConfig->product_sorting_direction, 'int');
if ( $order==2 && $orderby==0 ){
    $order = "2_up";
} elseif ( $order==2 && $orderby==1 ){
    $order = "2_down";
};

$selected = "selected=\"selected\"";

Код
<?php if ($this->config->show_sort_product){ ?>
        <select id="order" class="" onchange="if(this.value!='<?php print $order; ?>'){ $_('orderby').value = 0; if(this.value=='2_up'){this.value = 2;$_('orderby').value = 0;}; if(this.value=='2_down'){this.value = 2;$_('orderby').value = 1;}; if(this.value=='3'){$_('orderby').value = 1;}; submitListProductFilters(); }" size="1" name="order">
            <option <?php if($order==6){echo $selected;} ?>value="6">популярности</option>
            <option <?php if($order=="2_up"){echo $selected;} ?>value="2_up">возрастанию цены</option>
            <option <?php if($order=="2_down"){echo $selected;} ?>value="2_down">убыванию цены</option>
            <option <?php if($order==3){echo $selected;} ?>value="3">новинкам</option>
        </select>
<?php } ?>

p.s. еще предстоит переделать подсчет "популярности" исходя не из "хитов", а из реальных продаж за последние X дней.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Сменить значение переменной
« Ответ #5 : 21.06.2014, 15:27:13 »
Цитировать
не знаю насколько рационально
делал точно также, в шаблоне. конечно, немного не рационально, но к сожалению, если без хака ядра, то я вижу только такой путь.

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

devirus

  • Захожу иногда
  • 140
  • 6 / 0
Re: Сменить значение переменной
« Ответ #6 : 21.06.2014, 17:03:50 »
Цитировать
откуда юзеру знать реальные данные?

оно не ради юзеров :) а ради повышения продаж (реально популярный товар ведь с большей вероятностью купят)...
уже другую логику придумал — по реальным продажам отдельный блок "Хиты продаж", а в популярности надо ограничить хиты за последние X дней (иначе я сам уже несколько сотен хитов накрутил у одного товара пока тестил и его никто не обгонит).
Плюс в идеале хиты считать уникальные, но это уже придирки.
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Re: Сменить значение переменной
« Ответ #7 : 21.06.2014, 17:09:37 »
Цитировать
пока тестил и его никто не обгонит
ручками в базе обнови
каждая такая хотелка лишние запросы в базу
потому должен выбирать, а стоит ли?
*

devirus

  • Захожу иногда
  • 140
  • 6 / 0
Re: Сменить значение переменной
« Ответ #8 : 21.06.2014, 17:28:58 »
Цитировать
ручками в базе обнови

Даже если свои хиты почищу. Они не должны накапливаться за всё время существования магазина. Сезонность убивается.
Начали летом, у холодного лимонада хиты идут - все логично, но пришел новый год и у шоколадного деда мороза хиты зашкалили, а летом он так и остался "самым популярным", потому что лимонад уже не может перебить его. Отсюда снижение продаж и лояльности.
Утрировано конечно, но суть такая :)

А если брать хиты за неделю-месяц, то всё супер. Придется жертвовать запросом(
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Плагин - Скрывать цены, если товара нет в наличии [Скачать]

Автор kit2m2

Ответов: 8
Просмотров: 3347
Последний ответ 24.01.2020, 11:01:34
от kit2m2
Назначение цены в карточке товара в зависимости от группы пользователей

Автор san_san_ku

Ответов: 16
Просмотров: 1733
Последний ответ 03.10.2019, 19:11:45
от san_san_ku
Вывод цены

Автор mario052

Ответов: 2
Просмотров: 1087
Последний ответ 22.03.2018, 17:54:33
от mario052
Рандомная сортировка товаров одного производителя

Автор dvcool

Ответов: 2
Просмотров: 1696
Последний ответ 01.02.2018, 21:30:40
от dvcool
Сортировка товаров по артикулу

Автор lammmer

Ответов: 0
Просмотров: 1093
Последний ответ 13.02.2017, 17:54:46
от lammmer