Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Recommended Posts

 

Доброго времени суток! Достаточно давно пользуюсь модулем. Все работало замечательно пока не перешел на ocstore 1.5.5.1. Невозможно перейти никуда дальше страницы со списком поставщиков.

На веб-сайте произошла ошибка при получении http://*.ru/admin/index.php?route=catalog/suppler/insert&token=9f9dffc5df4e5241c3e62e267d1f02e2. Веб-сайт может быть закрыт на обслуживание или настроен неправильно.

Код ошибки: 500
 
Причем, если заменить suppler.xml на версию для OpenCart1-5-5-1 работает все кроме импорта товаров)))

 

Да, в 1.5.5.1 они убрали функцию getAllCategory, которой я пользовался.

Может еще чего изменили.

 

Я поступил просто: поставил модуль вручную, т.е. все вкюмодовские вставки сделал руками, а suppler.xml из вкюмода удалил.

Работает.

Надіслати
Поділитися на інших сайтах

Подскажите где что поменять в коде чтоб в поле SEO URL  попадало значение Модель -  оно ведь тоже уникально. Меня  это больше устроит   чем  безразмерный url который берется из названия.

Спасибо.

Ищите по тексту SEO URL d admin/model/catalog/suppler - там закоментирована эта возможность.

Откройте ее, уберите // в начале строки, а старую наоборот закройте //

 

А вообще, название товара в урле - это правильно, для гугла.

Надіслати
Поділитися на інших сайтах

Здравствуйте. У меня одна группа "Технические характеристики" в нее добавлены все атрибуты. Проблема в том что парсятся не все атрибуты. Все атрибуты добавлены в группу. На некотором товаре не парсятся значения даже при том что атрибут создан, включен и добавлен в группу. При чем даже если зайти в карточку товара в админке атрибут отсутствует, хотя у поставщика заполнен. 

Не хватило размера буфера (атрибутов много).

Увеличить можно тут:

 

$h = substr($ht, $pos-1, 5000);  

 

while ($posa < 4800) {  

 

5000 замените на 8000, а 4800 - на 7800

Надіслати
Поділитися на інших сайтах

Номера товаров идут произвольно. Нужно значить какую-то колонку в загружаемом прайс-листе выделить под номера товаров.

Номера товаров идут п/п

Например, товар 1234-01 соответствует записи в БД с ID = 1234

Следующий, добавляемый товар получит номер 1235-01, его ID будет 1235

Надіслати
Поділитися на інших сайтах

Подскажите кто-нибудь почему прайс лист создаётся без sku? Хотя на сайте товар с sku!?

Вы имеете в виду "почему товары экспортируются в прайс-лист без ску" ?

Нет, они экспортируются с ску (артикулом).

 

Это единственный случай, когда модуль создает прайс-лист.

Надіслати
Поділитися на інших сайтах

Помогите! Уже всю ветку перелопатила - ничего не помогает!Заливаю прайс на русском - всё нормально,меняю админку и сайт на украинский - и пытаюсь залить украинский -

Notice: Error: Duplicate entry '6391-21-1' for key 'PRIMARY'

Error No: 1062

INSERT INTO oc_product_attribute SET product_id = '6391', attribute_id = '21', language_id = '1', text = 'Поліамід - 75%, еластан - 15%, бавовна -10%' in /.../test/system/database/mysql.php on line 50

 

Opencart Версия 1.5.5.1, vqmod, модуль обновлён

Попробуйте так.

В admin/model/catalog/suppler в двух функциях:

 

 

public function    getAttributeById($product_id, $attribute_id, $lang) {        

        $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_attribute WHERE `product_id` = '" . (int)$product_id . "' and `attribute_id` = '". $attribute_id . "' and `language_id` = '". $lang. "'");

            

        return $query->rows;

    }    

    public function putAttributeById($data, $max_lang) {        

        

        $text = $data['text'];

        

        for    ($i=1; $i<=$max_lang; $i++) {

            $rows = $this->getAttributeById((int)$data['product_id'], (int)$data['attribute_id'], $i);

            if (empty($rows)) {

                $text = htmlspecialchars($text, ENT_COMPAT, 'UTF-8');

                $this->db->query("INSERT INTO " . DB_PREFIX . "product_attribute SET product_id = '" . (int)$data['product_id'] . "', attribute_id = '" . (int)$data['attribute_id'] . "', language_id = '" . $i . "', text = '" . $this->db->escape($text) . "'");

            }    

        }            

        $this->cache->delete('suppler');        

    }

 

вставить то, что отметил красным цветом.

Интересно, что получится :)

Надіслати
Поділитися на інших сайтах

Вы имеете в виду "почему товары экспортируются в прайс-лист без ску" ?

Нет, они экспортируются с ску (артикулом).

 

Это единственный случай, когда модуль создает прайс-лист.

В личку пришлю скриншоты примеров!!!!

Надіслати
Поділитися на інших сайтах


Вы подумайте, а я пока выложу 5.0 :)

Если бы вы знали, как надоело с четверкой возиться!

Парсинг - слабоват и только с одного сайта возможен,

Атрибуты не дополняются, а грохаются и создаются заново.

Из категории в категорию товары перенести - целый головняк......

"Атрибуты не дополняются, а грохаются и создаются заново."  Кстати в 5.0 версии это исправлено ?

Надіслати
Поділитися на інших сайтах


Попробуйте так.

В admin/model/catalog/suppler в двух функциях:

 

 

public function    getAttributeById($product_id, $attribute_id, $lang) {        

        $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_attribute WHERE `product_id` = '" . (int)$product_id . "' and `attribute_id` = '". $attribute_id . "' and `language_id` = '". $lang. "'");

            

        return $query->rows;

    }    

    public function putAttributeById($data, $max_lang) {        

        

        $text = $data['text'];

        

        for    ($i=1; $i<=$max_lang; $i++) {

            $rows = $this->getAttributeById((int)$data['product_id'], (int)$data['attribute_id'], $i);

            if (empty($rows)) {

                $text = htmlspecialchars($text, ENT_COMPAT, 'UTF-8');

                $this->db->query("INSERT INTO " . DB_PREFIX . "product_attribute SET product_id = '" . (int)$data['product_id'] . "', attribute_id = '" . (int)$data['attribute_id'] . "', language_id = '" . $i . "', text = '" . $this->db->escape($text) . "'");

            }    

        }            

        $this->cache->delete('suppler');        

    }

 

вставить то, что отметил красным цветом.

Интересно, что получится :)

тот же самое :(

Notice: Error: Duplicate entry '6532-21-1' for key 'PRIMARY'

Error No: 1062

INSERT INTO oc_product_attribute SET product_id = '6532', attribute_id = '21', language_id = '1', text = 'Поліамід - 75%, еластан - 15%, бавовна -10%' in /.../test/system/database/mysql.php on line 50

причём если эти столбцы в прайсе очистить,то всё кроме атрибутов(логично) заливается нормально на украинском

Надіслати
Поділитися на інших сайтах


Автору модуля: "Номер колонки, содержащей специальную цену:" не множится на курс. Логичнее было бы множить, раз цена множится, а то приходится делать в прайсе спец цену вручную с учётом курса.

Надіслати
Поділитися на інших сайтах


Да, в 1.5.5.1 они убрали функцию getAllCategory, которой я пользовался.

Может еще чего изменили.

 

Я поступил просто: поставил модуль вручную, т.е. все вкюмодовские вставки сделал руками, а suppler.xml из вкюмода удалил.

Работает.

Не помогло. Ошибка не вылетает, но при попытке импорта из файла страничка просто перезагружается. В логе также все чисто.

Надіслати
Поділитися на інших сайтах


Автору модуля: "Номер колонки, содержащей специальную цену:" не множится на курс. Логичнее было бы множить, раз цена множится, а то приходится делать в прайсе спец цену вручную с учётом курса.

Спасибо.

Вы пока, найдите по тексту: акционных цен

 

и вставьте ниже, перед

$data['price'] = $pr;

 

строку: $pr = $pr*$rate;

 

в 2-х местах

Надіслати
Поділитися на інших сайтах

Не помогло. Ошибка не вылетает, но при попытке импорта из файла страничка просто перезагружается. В логе также все чисто.

А errors есть ?

Надіслати
Поділитися на інших сайтах

Подскажите, на opencart 1.5.6. возможно поставить этот модуль? Пробовал - не вышло.

Придирается к языкам, или что ?

Надіслати
Поділитися на інших сайтах

В личку пришлю скриншоты примеров!!!!

Там скрины не прикрепляются.

Надіслати
Поділитися на інших сайтах

Добрый вечер!

Скачал последний релиз движка (Версия 1.5.5.1.1) , а так же только что купил этот модуль, установку сделал по инструкции, пункт "Поставщики " появился, но при нажатии на кнопку "добавить" выпадает такая ошибка:

Fatal error: Call to undefined method ModelCatalogCategory::getAllCategories() in /home/h57190/data/www/site.ru/admin/controller/catalog/suppler.php on line 626

В чем может быть проблема?

 

PS, VQmod установлен, доступ к модулю в настройках разрешен

Надіслати
Поділитися на інших сайтах


"Атрибуты не дополняются, а грохаются и создаются заново."  Кстати в 5.0 версии это исправлено ?

Это была не ошибка четверки, а такая концепция :(

Как понимать: "Обновить атрибуты" ?

Обновить их значения? Так они не меняются (кроме Гарантия, может быть).

А вдруг вам для фильтра нужно, чтобы атрибуты были другими, как их заменить - только грохнуть все и поставить новые.

Иначе, могут получиться дубли в одном товаре: Объем ОП и Память и Размер памяти, Размер оперативной памяти

Надіслати
Поділитися на інших сайтах

Убрали в 1.5.5.1 функцию ModelCatalogCategory из admin/model/catalog/category

 

Вставьте ее туда сами.

 

public function getAllCategories() {
        $category_data = $this->cache->get('category.all.' . $this->config->get('config_language_id') . '.' . (int)$this->config->get('config_store_id'));

        if (!$category_data || !is_array($category_data)) {
            $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "'  ORDER BY c.parent_id, c.sort_order, cd.name");

            $category_data = array();
            foreach ($query->rows as $row) {
                $category_data[$row['parent_id']][$row['category_id']] = $row;
            }

            $this->cache->set('category.all.' . $this->config->get('config_language_id') . '.' . (int)$this->config->get('config_store_id'), $category_data);
        }

        return $category_data;
    }

  • +1 1
Надіслати
Поділитися на інших сайтах

Убрали в 1.5.5.1 функцию ModelCatalogCategory из admin/model/catalog/category

 

Вставьте ее туда сами.

 

public function getAllCategories() {

        $category_data = $this->cache->get('category.all.' . $this->config->get('config_language_id') . '.' . (int)$this->config->get('config_store_id'));

        if (!$category_data || !is_array($category_data)) {

            $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "'  ORDER BY c.parent_id, c.sort_order, cd.name");

            $category_data = array();

            foreach ($query->rows as $row) {

                $category_data[$row['parent_id']][$row['category_id']] = $row;

            }

            $this->cache->set('category.all.' . $this->config->get('config_language_id') . '.' . (int)$this->config->get('config_store_id'), $category_data);

        }

        return $category_data;

    }

Насколько я понял нужно дописать это в файл category.php ? Не силен я в программировании

 

Если это так, то не помогло :(

 

 

Сейчас выдает вот что:

public function getAllCategories() { $category_data = $this->cache->get('category.all.' . $this->config->get('config_language_id') . '.' . (int)$this->config->get('config_store_id')); if (!$category_data || !is_array($category_data)) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . DB_PREFIX . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE cd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND c2s.store_id = '" . (int)$this->config->get('config_store_id') . "' ORDER BY c.parent_id, c.sort_order, cd.name"); $category_data = array(); foreach ($query->rows as $row) { $category_data[$row['parent_id']][$row['category_id']] = $row; } $this->cache->set('category.all.' . $this->config->get('config_language_id') . '.' . (int)$this->config->get('config_store_id'), $category_data); } return $category_data; }
Fatal error: Call to undefined method ModelCatalogCategory::getAllCategories() in /home/h57190/data/www/zoo-opt.ru/admin/controller/catalog/suppler.php on line 626

Т.е тот самый код, который вы написали, а я добавил в файл category.php в самый конец

 

Отбой, нашел в чем причина - закрывающий тег не написал в самом конце php файла

Змінено користувачем SSDD
Надіслати
Поділитися на інших сайтах


usergio, я приобрел модуль, скажите, правильно ли я понял начало работы - я должен прайс своего поставщика привести в вид идентичный тому что лежит в папке "прайсы для тестирования" при этом если мне надо будет обновить цены я каждый раз скачанный с сайта поставщика прайс должен приводить в этот определенный вид?

Надіслати
Поділитися на інших сайтах


У Вас в шапке стоит v.4.10. а в опциях демо 5.0

 

Можно сделать произвольное количество "Название категории в прайс-листе:" в закладке "Данные" больше чем 16 в демо?

Надіслати
Поділитися на інших сайтах


Хотелось бы сказать usergio отдельное спасибо, за оперативную помощь и отзвычивость.

Есть несколько незначительных пожеланий, но думаю со мной согласятся те, кто активно юзал этот модуль.

1) очень нехватает кнопки "применить" особенно когда редактируешь вкладку "данные"

2) хотелось бы, чтобы после экспорта товаров не надо было лезть на фтп. Возможно сделать, чтобы сразу предлагалось сохранить файл в указанное место на диске?

3) очень нехватает версии под 1.5.2.1.

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.