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

bgg87

  • Захожу иногда
  • 164
  • 2 / 0
  • Истина где-то рядом...
Всем привет!
Уже сутки пытаюсь вывести кнопку "Купить" (добавить в корзину) в "Сопутствующие товары" (похожие товары), но ничего не выходит, где только не искал и что только не делал.
VirtueMart 3.0.6.4

Методом тыка выяснил что шаблон находится тут:
/components/com_virtuemart/sublayouts/related.php
Код
<?php defined('_JEXEC') or die('Restricted access');
$related = $viewData['related'];
$customfield = $viewData['customfield'];
$thumb = $viewData['thumb'];
//juri::root() For whatever reason, we used this here, maybe it was for the mails
echo JHtml::link (JRoute::_ ('index.php?option=com_virtuemart&view=productdetails&virtuemart_product_id=' . $related->virtuemart_product_id . '&virtuemart_category_id=' . $related->virtuemart_category_id), $thumb   . $related->product_name, array('title' => $related->product_name,'target'=>'_blank'));
if($customfield->wPrice){
$currency = calculationHelper::getInstance()->_currencyDisplay;
echo $currency->createPriceDiv ('salesPrice', 'COM_VIRTUEMART_PRODUCT_SALESPRICE', $related->prices);
}
if($customfield->wDescr){
echo '<p class="product_s_desc">'.$related->product_s_desc.'</p>';
}

очень прошу подскажите пожалуйста что делать.
Да и в PHP я ноль! :)
*

neogeek

  • Захожу иногда
  • 196
  • 21 / 2
Должно помочь -
Код
<?php echo shopFunctionsF::renderVmSubLayout('addtocart',array('product'=>$product,'row'=>0)); ?>
*

neogeek

  • Захожу иногда
  • 196
  • 21 / 2
Хотя немного не так, там другая переменная же вместо product должно быть related
вот так точно выведет кнопку купить:
Код
<?php echo shopFunctionsF::renderVmSubLayout('addtocart',array('product'=>$related,'row'=>0)); ?>
*

bgg87

  • Захожу иногда
  • 164
  • 2 / 0
  • Истина где-то рядом...
Огромное человеческое спасибо!
Ваша помощь неоценима - вопрос решен!  :D

P.S. оказывается в PHP я не полный ноль. При добавлении вашего кода показал белый экран, немного подумав и сравнив с PHP товаров увидел что нет закрывающего тега ?>
В итоге код выглядит так
Код
<?php defined('_JEXEC') or die('Restricted access');

$related = $viewData['related'];
$customfield = $viewData['customfield'];
$thumb = $viewData['thumb'];

//juri::root() For whatever reason, we used this here, maybe it was for the mails
echo JHtml::link (JRoute::_ ('index.php?option=com_virtuemart&view=productdetails&virtuemart_product_id=' . $related->virtuemart_product_id . '&virtuemart_category_id=' . $related->virtuemart_category_id), $thumb   . $related->product_name, array('title' => $related->product_name,'target'=>'_blank'));
if($customfield->wPrice){
$currency = calculationHelper::getInstance()->_currencyDisplay;
echo $currency->createPriceDiv ('salesPrice', 'COM_VIRTUEMART_PRODUCT_SALESPRICE', $related->prices);
}
if($customfield->wDescr){
echo '<p class="product_s_desc">'.$related->product_s_desc.'</p>';

}
?>
<?php echo shopFunctionsF::renderVmSubLayout('addtocart',array('product'=>$related,'row'=>0)); ?>
*

stydent

  • Захожу иногда
  • 150
  • 1 / 0
  • vlad-link.ru
Должно помочь -
Код
<?php echo shopFunctionsF::renderVmSubLayout('addtocart',array('product'=>$product,'row'=>0)); ?>
А почему сейчас в версии 3.0.13.4 сопутствующие товары выводит customfields.php, при этом шаблон related.php существует.
В шаблоне товара идет такой код
Цитировать
echo shopFunctionsF::renderVmSubLayout('customfields',array('product'=>$this->product,'position'=>'related_products','class'=> 'product-related-products','customTitle' => true ));
Как же тогда заюзать related.php? В вызове функции шаблон менять пробовал, просто переставало выводить.
*

stydent

  • Захожу иногда
  • 150
  • 1 / 0
  • vlad-link.ru
Извиняюсь. все выводит, не доглядел.
Может знаете как вывести еще настраиваемые поля у сопутствующих, т.к. они на цену влияют.
« Последнее редактирование: 29.02.2016, 23:33:33 от stydent »
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
Цитировать
Может знаете как вывести еще настраиваемые поля у сопутствующих, т.к. они на цену влияют.

Ну так так и выводите...
Код: php
<?= shopFunctionsF::renderVmSubLayout('customfields',array('product'=>$this->product,'position'=>'related_products','class'=> 'product-related-products','customTitle' => true )); ?>
Тут есть несколько моментов :
1.  'customfields'= это название шаблона для вывода настраиваемых полей. этот шаблон находится в /components/com_virtuemart/sublayouts/customfields.php

2. 'product'=>$this->product, тет передается объект продукта.. в разных местах VirtueMart он может быть в разных переменных.
к примеру в related он так записан $related.
Соответственно что бы из related вызвать customfields то строка
'product'=>$this->product, -
должна быть записана как
'product'=> $related,

3. 'position'=>'related_products',
Это позиция в которой выводится кастомарное поле. Эту позицию мы указываем при создании самого поля.
Но по скольку Вы говорите что настраиваемые поля влияют на стоимость товара то скорее всего это позиция addtocart
И для того что бы выбор этого поля влиял на цену товара то вы должны выводить его в форме в которой находится кнопка КУПИТЬ.

В итоге получаем
Код: php
<?= shopFunctionsF::renderVmSubLayout('customfields',array('product'=>$related,'position'=>'addtocart')); ?>

но еще раз напомню. Позиция 'addtocart' для того что бы менялась цена в зависимости от выбора этого поля должна быть внутри блока
Код
<form method="post" class="product js-recalculate" action="#">
...
  <div class="addtocart-bar">
       <input type="submit" name="addtocart" class="addtocart-button" value="Купить" title="Купить">
  </div>
...
<?= shopFunctionsF::renderVmSubLayout('customfields',array('product'=>$related,'position'=>'addtocart')); ?>
</form>


ps Если кого то смущает такой значок то это сокращенное написание функции echo. Срабатывает в начале кода.
т.е. <?= 'текст' ?> и <?php echo 'текст' ?> равнозначны. Очень удобно когда нужно вывести значение только одной переменной.)
 
*

stydent

  • Захожу иногда
  • 150
  • 1 / 0
  • vlad-link.ru
Ну так так и выводите...
Код: php
<?= shopFunctionsF::renderVmSubLayout('customfields',array('product'=>$this->product,'position'=>'related_products','class'=> 'product-related-products','customTitle' => true )); ?>

так то я пробовал.
в
Код
<?php echo shopFunctionsF::renderVmSubLayout('addtocart',array('product'=>$related,'row'=>0)); ?>
уже есть вывод полей. но почему то $related их не имеет. Хотя если перейти прям в товар, они будут выводиться
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
Цитировать
но почему то $related их не имеет
по тому наверное что в $related не подключена модель кастомарных полей..

Как подключить модель кастомарных полей можно посмотреть в модели продуктов, в папке admin/components/com_virtuemart/models/product.php

Щас метод не скажу..)))

Но тут вот что может получится ... Что если  у вас полей будет много для каждого запроса... то когда страница категорий сработает или рекомендуемых продуктов.. И там товаров будет много... то может сервак начать краснеть понемногу... )))

Так что лучше все таки  это отделенный файл шаблона за бацать. и там запросом по id товара и названию кастомарного поля как то искать...
 
*

stydent

  • Захожу иногда
  • 150
  • 1 / 0
  • vlad-link.ru

Но тут вот что может получится ... Что если  у вас полей будет много для каждого запроса... то когда страница категорий сработает или рекомендуемых продуктов.. И там товаров будет много... то может сервак начать краснеть понемногу... )))
 

задумано что будет только в карточке товара так.
т.е реализовать хочу вот это https://yadi.sk/i/ehh6d8OmpjdqP
Как это в один товар запихать не знаю. поэтому предложу клиенту на сопутствующих товарах делать, т.е. кнопка купить будет у каждого размера. Один размер - один товар.
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
*

stydent

  • Захожу иногда
  • 150
  • 1 / 0
  • vlad-link.ru
Если так то нечего голову морочить плагин есть такой
Пакетной продажи.
Вот так выглядит...


а тут в работе

спасибо
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
*

stydent

  • Захожу иногда
  • 150
  • 1 / 0
  • vlad-link.ru
так может и плагин дать )))) тоже не вопрос..
уже нашел catproduct
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как вывести слово От рядом с ценой?

Автор art22

Ответов: 4
Просмотров: 2681
Последний ответ 07.04.2024, 11:19:12
от art22
Как сделать товары в 2 колонки в моб версии?

Автор art22

Ответов: 4
Просмотров: 3763
Последний ответ 06.12.2022, 11:42:56
от art22
[Решено] Если товар уже есть вкорзине изменить кнопку "Добавить в корзину"

Автор x-render

Ответов: 26
Просмотров: 14832
Последний ответ 26.11.2022, 22:38:11
от SolopoV
Как пересохранить все товары?

Автор stydent

Ответов: 1
Просмотров: 4177
Последний ответ 30.03.2022, 10:38:06
от itpremium
mod_virtuemart_product - как скрыть товары, которых нет в наличии?

Автор alexfom_16

Ответов: 40
Просмотров: 8467
Последний ответ 11.10.2021, 17:50:38
от hmr