Jump to content
Sign in to follow this  
nyesi

Счетчик товаров в категориях

Recommended Posts

Доброго времени суток.

Пишу загрузчик товаров из excel.

Всё получается, кроме одной - после загрузки не считает счетчик товаров в категориях. Везде 0.  А товары и категории все появляются. Может кто - то сталкивался c таким?

 

Share this post


Link to post
Share on other sites

каким методом считаешь? если стандартным проверь все ли условия sql запроса соблюдены для попадания товара в количество категории

Share this post


Link to post
Share on other sites

Где можно почитать про эти условия? 

Share this post


Link to post
Share on other sites

это смотря каким методом вы пытаетесь сделать подсчет, если стандартными методами опенкарт то товары скорее всего у вас товары загружаются с иными настройками которые требует соблюдать опенкарт для подсчета, проверьте привязан ли товар к категории, (пишите ли при експорте в магазин привязку товара к категории в таблице product_to_category)  имеет ли статус включено, есть ли количество и тп, по памяти не скажу. вообще на словах сложно обьяснить вы бы кусок кода какой нибудь сбросили) например - как именно считаете

Share this post


Link to post
Share on other sites

Подсчет должен делать opencart при выводе категорий. Я пишу загрузчик в back end.

 

 
 $this->db->query("INSERT INTO " . DB_PREFIX . "product SET model = '" .$row[0]. "', sku = '" .$row[0]. "', upc = '', ean = '', jan = '', isbn = '', mpn = '', location = '', quantity = '" .$row[2]. "', minimum = '1', subtract = '0', stock_status_id = '" .$sstatus_id. "', date_available = '0', manufacturer_id = '" .$manufacturer_id. "', shipping = '1', price = '" .$product_price. "', points = '0', weight = '0.00', weight_class_id = '0', length = '0.00', width = '0.00', height = '0.00', length_class_id = '0', status = '1', tax_class_id = '0', sort_order = '100', date_added = NOW()"); $product_id = $this->db->getLastId();
		   $this->db->query("INSERT INTO " . DB_PREFIX . "product_description SET product_id = '".$product_id."', language_id = '".$language_id."', name = '".$row[1]."', description  = '', tag = '', meta_title = '', meta_h1 = '', meta_description = '', meta_keyword = ''");
		   
		   $this->db->query("INSERT INTO " . DB_PREFIX . "product_to_store SET product_id = '".$product_id."', store_id = '".$store_id."'");
		   $this->db->query("INSERT INTO " . DB_PREFIX . "product_to_category SET product_id = '".$product_id."', category_id = '".$category_id."', main_category = '1'");

А что пишется в таблицу oc_category_path? Подозреваю , что проблема в том что в эту таблицу ничего не пишу

Edited by nyesi

Share this post


Link to post
Share on other sites
добавьте тестовый товар через админку и сравните все столбцы - чем отличается импортированный товар от добавленного

 

stock_status_id = '" .$sstatus_id. "' - не опечатка? переменная правильно написана?

 

ну и еще - пустые поля не обязательно прописывать: upc = '', ean = '', jan = '' - по сути и без них эффект тот же будет

Share this post


Link to post
Share on other sites

$sstatus_id. "' - не опечатка! 
Тестовый товар не получилось добавить , так как в админке не выводятся категории куда добавить товар. 

 

Решение в том, что таблицу  oc_category_path тоже надо заполнять.

Как заполнять нашел сдесь: http://stackoverflow.com/questions/15162193/opencart-how-to-accurately-populate-oc-category-path

 

После того как заполнил таблицу  oc_category_path по этой рекомендации счетчик товаров начал работать и все категории появились в админке.

 

Всем спасибо за внимание и ответы

Share this post


Link to post
Share on other sites

Данный запрос - полный fail. Данные не экранируются, что ведет к проблемам с безопасностью.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.