Jump to content
Sign in to follow this  
byters

Привязать отзывы к товарам

Recommended Posts

Друзья, такая ситуация: имеются товары в CSV файле и отзывы к этим товарам в другом CSV файле. Единственное поле по которым эти файлы связываются - это PRODUCT ID. Все бы ничего, но при заливке файла с товарами в opencart id товара автоматически меняется счетчиком, соответственно привязка отзывов к товарам не осуществляется.

Единственный выход который я вижу - это убрать счетчик из product id, залить товары напрямую в базу, залить отзывы и опять включить счетчик. Но тут опять же слетит например привязка товара к производителю.

Кто что может подсказать? Как решить данную проблему?

Share this post


Link to post
Share on other sites

добавить в таблицу товаров столбец для хранения "оригинального product_id", по которому и импортировать отзывы...

Share this post


Link to post
Share on other sites

добавить в таблицу товаров столбец для хранения "оригинального product_id", по которому и импортировать отзывы...

Эм... Хорошо. Будет у меня такой столбец. А как тогда связать их между собой (отзывы с товаром)?

Share this post


Link to post
Share on other sites

как это "как?" ? ))

при импорте отзывов получать по этому столбцу product_id в вашем магазине и дальше, как обычно.

Share this post


Link to post
Share on other sites

Не совсем понимаю, как это реализовать. Нельзя ли "разжевать для чайников" порядок действий, пожалуйста?

Share this post


Link to post
Share on other sites

пример метода для получения product_id (для модели)

	public function getProductIdByImportProductId($import_product_id) {
		$product_id = 0;
		$query = $this->db->query("SELECT `product_id` FROM `".DB_PREFIX."product` WHERE `ТВОЙ_НОВЫЙ_СТОЛБЕЦ_С_ОРИГИНАЛЬНЫМ_PRODUCT_ID` = '".(int)$import_product_id."'");
		if ($query->num_rows) {
			if ($query->num_rows == 1) {
				$product_id = $query->row['product_id'];
			} else {
				$product_id = -1;
			}
		}
		return $product_id;
	}
возвращает

0 - если нет товара;

-1 - если по оригинальному id найдено более одного товара

>0 - product_id найденного товара

"разжевывать дальше" == сделать за тебя

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.