-
Публікації
57 -
З нами
-
Відвідування
Тип публікації
Профілі
Форум
Маркетплейс
Статті
FAQ
Наші новини
Магазин
Блоги
module__dplus_manager
Повідомлення, опубліковані користувачем iMateo
-
-
Привет!
Столкнулся с понятием Событий в OpenCart (в админке Дополнения->События). Очень крутая штука, которая позволяет запускать какие-то функции модулей и компонентов по каким-то событиям, например регистрация пользователя или создание нового товара в админке.
В общем, все очень круто. Но! Документация до смешного скудная, хоть Дэниэля хоть iSensLab, нет ни описание всех событий ни каких-то описаний, как дебажить на предмет ошибок. Основная проблема в том, что сработал или нет ваш скрипт вы НЕ узнаете, т.к. ошибки не пишутся в error.log.
Вопрос: знаете ли вы, существует ли модуль для дебага Событий или может статейка какая-то с подробным описанием функции Событий в OpenCart?
-
Вам поможет такая штука как зависимые списки. http://xandeadx.ru/blog/javascript/36
-
В 20.10.2017 в 00:04, shelestp сказал:
При установке ocmod Не найдена папка с файлами для загрузки!
Здравствуйте! Какая версия ОС и установлен ли фикс для фтп?
-
Здравствуйте!
А можете ПМ свой проверить?
-
Описанные правки проверены для версии модуля Export Import Tool версии 3.7!
Поле, которое добавим будет называться main_product. Вы точно так же можете на свое изменить
После:
$location = $this->db->escape($product['location']); $location = $this->db->escape($product['location']); $store_ids = $product['store_ids']; $layout = $product['layout']; $related_ids = $product['related_ids']; $subtract = $product['subtract']; $subtract = ((strtoupper($subtract)=="TRUE") || (strtoupper($subtract)=="YES") || (strtoupper($subtract)=="ENABLED")) ? 1 : 0; $minimum = $product['minimum'];
Добавить:
$main_product = $product['main_product'];
------------------------------
Далее, изменить строку:
$sql .= "`tax_class_id`,`viewed`,`length`,`width`,`height`,`length_class_id`,`sort_order`,`subtract`,`minimum`) VALUES ";
На
$sql .= "`tax_class_id`,`viewed`,`length`,`width`,`height`,`length_class_id`,`sort_order`,`subtract`,`minimum`,`main_product`) VALUES ";
Обратите внимание на кавычки! Они должны быть именно такими, или код ошибку выдаст.
------------------------------
Строку:
$sql .= "$tax_class_id,$viewed,$length,$width,$height,'$length_class_id','$sort_order','$subtract','$minimum');";
Изменить на:
$sql .= "$tax_class_id,$viewed,$length,$width,$height,'$length_class_id','$sort_order','$subtract','$minimum','$main_product');";
------------------------------
После:
$sort_order = $this->getCell($data,$i,$j++,'0'); $sort_order = $this->getCell($data,$i,$j++,'0'); $subtract = $this->getCell($data,$i,$j++,'true'); $minimum = $this->getCell($data,$i,$j++,'1');
Добавить:
$main_product = $this->getCell($data,$i,$j++,'0');
------------------------------
После:
$product['subtract'] = $subtract; $product['subtract'] = $subtract; $product['minimum'] = $minimum;
Добавить:
$product['main_product'] = $main_product;
------------------------------
Строку:
$expected_heading = array_merge( $expected_heading, array( "meta_description", "meta_keywords", "stock_status_id", "store_ids", "layout", "related_ids", "tags", "sort_order", "subtract", "minimum") );
Изменить на:
$expected_heading = array_merge( $expected_heading, array( "meta_description", "meta_keywords", "stock_status_id", "store_ids", "layout", "related_ids", "tags", "sort_order", "subtract", "minimum", "main_product" ) );
------------------------------
После:
$sql .= " p.stock_status_id, "; $sql .= " p.stock_status_id, "; $sql .= " mc.unit AS length_unit, "; $sql .= " p.subtract, "; $sql .= " p.minimum, ";
Добавить:
$sql .= " p.main_product, ";
Обратите внимание на пробел после p.main_product, это важно, не забудьте его поставить!
------------------------------
После:
$worksheet->getColumnDimensionByColumn($j++)->setWidth(max(strlen('sort_order'),8)+1); $worksheet->getColumnDimensionByColumn($j++)->setWidth(max(strlen('sort_order'),8)+1); $worksheet->getColumnDimensionByColumn($j++)->setWidth(max(strlen('subtract'),5)+1); $worksheet->getColumnDimensionByColumn($j++)->setWidth(max(strlen('minimum'),8)+1);
Добавить:
$worksheet->getColumnDimensionByColumn($j++)->setWidth(max(strlen('main_product'),8)+1);
------------------------------
После:
$data[$j++] = 'sort_order'; $data[$j++] = 'sort_order'; $data[$j++] = 'subtract'; $data[$j++] = 'minimum';
Добавить:
$data[$j++] = 'main_product';
-------------------------------
ПОСЛЕДНИЕ ПРАВКИ! После:
$data[$j++] = $row['sort_order']; $data[$j++] = $row['sort_order']; $data[$j++] = ($row['subtract']==0) ? 'false' : 'true'; $data[$j++] = $row['minimum'];
Добавить:
$data[$j++] = $row['main_product'];
-
Кнопка "Редактировать товар"
Простой и удобный модуль для удобного редактирования товаров.
Для залогиненого администратора возле кнопки "Купить" в карточке товара появляется "Редактировать этот товар", по клику открывает сразу админку на странице редактирования этого товара.
Простая установка через ocmod.
Тестировалось на дефолтном шаблоне! Если у вас другой – скорее всего потребуется доработка напильником.
-
Добавил
-
Добавлено02.10.2017
-
Категория
-
Системные требования
-
Метод активацииБез активации
-
Ioncube LoaderНет
-
ocStore2.3
2.2
2.1 -
OpenCart.Pro, ocShopНе проверялось
-
Обращение к серверу разработчика
- 1
-
-
Написал подробную инструкцию по добавлению своего поля https://netsh.pp.ua/2017/09/export-import-tool-custom-fields/
- 1
-
Всем привет!
По рабочим задачам написал статью о том, как в популярный Export Import Tool добавить свое поле обмена. Вставлять целиком в пост не уверен, что нужно (ну, только если модераторы сочтут нужным).
Так же готов оказать посильную помощь в этом вопросе, т.к. потратил на это полных два рабочих дня!
-
В 18.09.2017 в 14:43, USSRforum сказал:
Имеется в виду - создаются таблицы товаров и категорий или полностью вся база данных копируется?
Создаются таблицы товаров и категорий. Небольшое неудобство, что все это потом перепривязать нужно.
-
Всем привет!
Есть живая реализация такой функции для 1.5.х
Для 2.х в разработке.
Без интеграции такие решения не заведутся (скачал-установил-пользуйся), т.к. создается альтернативный каталог в базе данных (родной на несколько складов ну вообще не заточен), а следовательно нужно адаптировать установленные модули.
-
Ай красавчик, спасибо за модуль!
P.S. Немного добавлю. Если у вас есть претензии к модулю (ну такие, серьезные), помните, что этот модуль БЕСПЛАТЕН. Мне он по душе, т.к. я могу ручками в нем что-то исправить, что мне не нравится и это лучше чем писать что-то такое с нуля, ну прям на неделю-две лучше и мне есть куда потратить это время, чем писать с нуля модуль блога.
Поэтому автору респект и уважуха (с).
P.S. Найду баги - обязательно сообщу.
-
Здравствуйте!
Нужен ли ioncube для шаблона, если да, то что у него зашифровано? Подойдет ли с допиливанием для магазина электро и бензо инструментов или он очень заточен под мебель?
-
Лес рук ))
Аналогичная задача
-
ЭЭэ, а на какой стадии проект? Работает еще?
-
Спасибо за решение! А можно как то реализовать, чтоб вот цен нигде не было, только текст "под заказ", но а 1 категории цены все таки показывались?
Это как? Чуток больше подробностей.
-
Давайте для начала определимся какого вида ЧПУ вы хотите в результатах поиска, после этого можно будет подсказать какие правки нужно сделать.
-
Здравствуйте!
Есть задача фильтровать по умолчанию товары в категории по двум параметрам: цена (по возрастанию) и наличию (товары, которых нет в конце категории). Собственно, сам код нашелся, он в модели товара, но фильтр перезаписывает поверх свои сортировки (сразу, без выбора параметров) при загрузке страницы.
Хотел исправить, но оказалось, что модель фильтра зашифрована ionCube. Подскажите что можно сделать?
События (Events) в OpenCart 2.2+. Модуль дебага
в Opencart 2.x: Пошук модулів
Опубліковано:
В чем-то согласен, но модуль который очень нужен без Events не будет функционировать.