- Posts: 382
- Thank you received: 77
Импорт-Экспорт CSV
Набор полей зависит от вашей задачи.
Если вы сделали экспорт ваших товаров, поменяли какую-то информацию в csv-файле и грузите обратно в базу через импорт, то идентификатор товара задавать надо (по нему как раз будет найден тот уникальный товар, который надо модифицировать). Можно также задавать поля с префиксом product - product_name, product_description, ...
Идентификаторы с префиксом price, file не надо задавать. Точно можно задать price_value, file_name, file_description.
При этом при импорте надо снять/поставить галочки, так, чтобы если есть товар с заданным идентификатором, то по нему информация в базе данных менялась, а не новый товар добавлялся.
Если вы добавляете новые товары, то идентификаторы не надо указывать вообще. Иначе будут конфликты.
Лучший путь - экспериментировать. Возьмите пару товаров для начала. И те поля, которые вам нужно добавить/изменить.
Для полного переноса всех товаров сами разработчики рекомендуют использовать PHPMyAdmin или аналогичные средства для работы с таблицами MySQL - PHPMyAdmin или аналогичные.
Удачи!
Please Log in or Create an account to join the conversation.
С самой проблемой экспериментальным путём разобрался. Но вот её причины мне остались непонятны.
В ходе решения проблемы было обнаружено, что Хика информацию о товарах и категориях разбрасывает по своим таблицам и очень объёмно ругается, когда при импорте товара ему присваиваются категории с помощью значений их ID, отказываясь их учитывать в процессе.
Проблема подвязки товара к категории решается путём переименования в csv-файле колонки "category_name" в "categories" ("category_id" при этом не используется). В этом случае Хика молча и спокойно связывает товар и категории. Но почему ей нужно это переименование, если колонки с таким именем нет в экспортируемом файле?
Please Log in or Create an account to join the conversation.
Вы правильно заметили, что Hikashop использует несколько таблиц для хранения товара. Например, есть таблица категорий и товаров, а есть таблица связей между ними, в ней хранятся связки идентификаторов товаров и категорий.
Логика при импорте у системы примерно такая:
- ищется товар с указанным идентификатором в таблице товаров _hikashop_product, если найден, то в этой таблице производятся изменения
- если указаны "categories", то в таблице категорий _hikashop_category ищутся все указанные категории, а потом пары идентификатора товара и найденных категорий ищутся в таблице _hikashop_product_category. Ненужные связки удаляются, а новые добавляются (если вы
поменяли категории для товара, какие-то убрали, какие-то добавили).
Также происходит и с другими таблицами, которые логически связаны с товарами - цены, файлы.
Please Log in or Create an account to join the conversation.
в экспортированном файле абзацы описания товара выбрасываются в ячейку первого столбца следующей строки таблицы csv, тем самым смещая другие ячейки не в свои столбцы.
Please Log in or Create an account to join the conversation.
Просто открыть в Excel.
И, что удивительно, всё описание вставляется в одну ячейку.
А вот если старым способом вставлять, то символы CRLF как разрыв строки интерпретируются.
Можно, конечно, сначала поработать с этим полем в базе (через массовые действия) и заменить все эти символы либо на пробелы, либо на <br>, ...
Вы как открываете файл?
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
Попробуйте просто открыть csv-файл в Excel. Что получится?
Пробовали ли исправить данные через массовые действия?
Сделайте выгрузку пары типичных записей и прикрепите сюда файл. Посмотрю у себя.
Please Log in or Create an account to join the conversation.
Просто открыть csv-файл в Excel получилось, данная проблема отсутствует.
Спасибо.
Please Log in or Create an account to join the conversation.
Я импортировал на сайт 963 артикула.
1. Хика выругалась о том, что поле "producing_country" почему-то не разрешено редактировать.
Понимаю, что это можно обойти, создав дополнительное поле, но не понимаю, зачем создавать дополнительное, если есть стандартное.
Можно ли решить проблему доступа именно к этому полю (поле "product_manufacturer_id" я использую для брендов)?
2. Подскажите, пожалуйста, как с помощью массовых действий прописать товарам алиасы и канонические ссылки?
Please Log in or Create an account to join the conversation.
- progreccor
-
- Offline
- SEO, webdesign
Я не явлюсь официальной службой поддержки!
Я здесь добровольно!
Хочешь получить купон на скидку Hikashop? Спроси меня как!
Please Log in or Create an account to join the conversation.
При заданной конструкции "katalog/{product_alias}" на выходе получается ссылка "http://.../katalog/".
Есть ли возможность через массовые действия прописывать алиасы?
Please Log in or Create an account to join the conversation.
- progreccor
-
- Offline
- SEO, webdesign
без него товар не создается
Я не явлюсь официальной службой поддержки!
Я здесь добровольно!
Хочешь получить купон на скидку Hikashop? Спроси меня как!
Please Log in or Create an account to join the conversation.
- progreccor
-
- Offline
- SEO, webdesign
в массовых действиях есть операция - "изменить значение". пожалуйста устанавливайте по любому закону который нравится
Я не явлюсь официальной службой поддержки!
Я здесь добровольно!
Хочешь получить купон на скидку Hikashop? Спроси меня как!
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
Проблема решается следующим образом:
Установить фильтр в колонке товаров "product_alias= (пустое поле)";
установить следующий фильтр "тип товара = товары".
И указать действие "Run PHP code":
Please Log in or Create an account to join the conversation.