Новости Joomla

20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет

20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет

👩‍💻 20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет. Вокруг неё сложилось большое интернациональное русскоязычное сообщество. На сайте нашего сообщества и на Хабре к юбилею были собраны интервью с его видными представителями. Сегодня мы читаем интервью с Ринатом Кажетовым (@rkazhet). Ринат - один из администраторов чата русскоязычного Joomla-сообщества, из Казахстана. Это человек, который всегда знает или найдёт нужную ссылку, пристально следит за новостями в мире Joomla, многое узнаёт первым и просто очень отзывчивый человек. Интервью с Ринатом взял Евгений Сивоконь.Читать интервью@joomlafeed#joomla #community

WT AmoCRM - RadicalMart плагин интеграции интернет-магазина на Joomla с CRM

👩‍💻 WT AmoCRM - RadicalMart плагин интеграции интернет-магазина на Joomla с CRM.Плагин умеет отправлять данные заказа из Joomla компонента интернет-магазина RadicalMart в AmoCRM, а так же оставлять примечания к сделке при смене статуса заказа (выберите необходимые статусы заказа RadicalMart в настройках плагина).Возможности плагина - создание сделок в AmoCRM в момент создания заказа в интернет-магазине RadicalMart- выбор воронки AmoCRM, в которой создавать сделки- выбор тега, которым будут помечаться созданные сделки- в комментарий к сделке при создании заказа пишутся:-- точная общая сумма заказа (Amo CRM не принимает дробные значения в поле бюджет, например с копейками)-- статус заказа-- информация о доставке (способ, адрес и комментарий)-- информация о способе оплаты-- контактные данные покупателя (могут отличаться от данных пользователя, создавшего заказ. Например, если доставка для другого человека)-- прямая ссылка на заказ в панели администрирования сайта-- список товаров заказа (опционально)добавление комментария к сделке при изменении статуса заказа в интернет-магазине RadicalMart (выберите необходимые статусы заказа в настройках плагина)-- добавляет в интерфейс просмотра заказа ссылку на сделку в AmoCRM, если таковая обнаружена (соответствие заказов и сделок хранится в базе данных)-- UTM-метки для сделки. Указывает, если на сайте используется комплект плагинов RadicalForm и WT AmoCRM - RadicalForm.
Для работы плагина необходима установка и настройка библиотеки WT Amo CRM library для Joomla версии 1.3.0 и выше.
Плагин бесплатный. Тестировался на Joomla 5.4 и RadicalMart 2.2.4.
Страница расширения и скачатьТак же:- Интернет-магазин RadicalMart- WT Amo CRM библиотека интеграции Joomla и AmoCRM- RadicalForm плагин обратной связи- WT AmoCRM - RadicalForm - плагин отправки сообщений из RadicalForm в AmoCRM@joomlafeed#joomla #crm #amocrm #radicalmart

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

Modis

  • Захожу иногда
  • 153
  • 0 / 0
Всем привет. На сайте используется магазин. Продажа ключей к программам. Изначально было так:
Есть товар. У товара есть два атрибута: Имя функции и Версия AutoCAD. И есть один свободный атрибут: Регистрационный ключ.
При покупке должен сформироваться ответный ключ, из строки "ВерсияАвтокад+РегКлюч+ИмяФункции" используя md5. Лично я не силен в php. У меня вся эта реализация есть на C#, поэтому я нанимал фрилансера и он мне реализовал мою задачу. Я поискал по файлам магазина и нашел реализацию в файле /com_jshopping/tables/order.php:
Код: php
function getAllItems(){
    if (!isset($this->items)){
        $jshopConfig = JSFactory::getConfig();
        $query = "SELECT OI.* FROM `#__jshopping_order_item` as OI WHERE OI.order_id = '".$this->_db->escape($this->order_id)."'";
        $this->_db->setQuery($query);
        $this->items = $this->_db->loadObjectList();

        $query = "SELECT * FROM `#__jshopping_attr_values`";
        $this->_db->setQuery($query);
        $attributes = $this->_db->loadObjectList();

        foreach($this->items as $k=>$v){
            $this->items[$k]->_qty_unit = '';
            $this->items[$k]->delivery_time = '';
            $depend_attr = unserialize($this->items[$k]->attributes);

            foreach ($attributes as $key => $val) {
                if (array_key_exists($val->attr_id, $depend_attr) && in_array($val->value_id, $depend_attr)) {
                    $this->items[$k]->attributes_values[$val->attr_id] = $val->{'name_ru-RU'};
                }
            }
            $key = unserialize($this->items[$k]->freeattributes);
            $key = $key[1];

            $this->items[$k]->product_hash = md5(
                $this->items[$k]->attributes_values[1] .
                $key .
                $this->items[$k]->attributes_values[2]
            );
        }

        if ($jshopConfig->display_delivery_time_for_product_in_order_mail){
            $deliverytimes = JSFactory::getAllDeliveryTime();
            foreach($this->items as $k=>$v){
                if (isset($deliverytimes[$v->delivery_times_id])) {
                    $this->items[$k]->delivery_time = $deliverytimes[$v->delivery_times_id];
                }
            }
        }
    }
Теперь у меня случились важные изменения на сайте и появился еще один атрибут - Версия Revit. Т.е. у каждого товара повторяются атрибуты Версия функции, Имя функции и Рег Ключ и на выбор один атрибут - либо Версия Автокада либо версия Ревита.
По логике я понимаю, что в случае товара для ревита генерация ответного ключа должна выглядеть так:
Код: php
$this->items[$k]->product_hash = md5(
    $this->items[$k]->attributes_values[3] .
    $key .
    $this->items[$k]->attributes_values[2]
);

Осталась одна проблема - сделать условный оператор if. Т.е. если attributes_values[1] == null (по типу C# пишу )) ), то использовать attributes_values[3]. К сожалению, в php я вообще не шарю, поэтому прошу помощи форумчан
*

Modis

  • Захожу иногда
  • 153
  • 0 / 0
В общем решил пойти методом банальной эрудиции и сделал так:
Код: php
if($this->items[$k]->attributes_values[3] != ''){
$this->items[$k]->product_hash = md5(
$this->items[$k]->attributes_values[3] .
$key .
$this->items[$k]->attributes_values[2]
);
}else {
$this->items[$k]->product_hash = md5(
$this->items[$k]->attributes_values[1] .
$key .
$this->items[$k]->attributes_values[2]
);
}
И вроде даже работает -)))
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Код товара - автоматическая генерация.

Автор AndreyUA

Ответов: 93
Просмотров: 15352
Последний ответ 17.03.2023, 11:28:47
от geral
Генерация алиасов в Unicode

Автор misterfalse

Ответов: 3
Просмотров: 1367
Последний ответ 15.07.2015, 19:00:11
от dmitry_stas