Dzisiaj analogicznie do artykułu:
przeniesienie kombinacji produktów ze sklepu w wersji 1.3-1.4 do 1.6.x [AKTUALIZACJA]
Pokażemy w jaki sposób przenieść cechy (features) ze sklepu opartego o PrestaShop 1.4 do sklepu w wersji 1.6 lub 1.7.
Import nie wymaga żadnych operacji na plikach CSV. Wykonamy odpowiednie zapytania w bazie danych MySQL.
Zawartość artykułu
Export danych ze starego sklepu.
Na początek na starym sklepie wchodzimy do systemu zarządzania bazą MySQL np. PhpMyAdmin i eksportujemy następujące tabele:
ps_feature ps_feature_lang ps_feature_product ps_feature_shop ps_feature_value ps_feature_value_lang
Uwaga! Jeśli w Twoim sklepie występuje inny prefix niż w naszych przykłądach (u nas używamy domyślnego: ps_) – uwzględnij to w Twoich zapytaniach.
Exportujemy jedynie dane – bez struktury. W zależności od wersji PhpMyAdmin wykonuje się to w inny sposób – może być konieczne zaznaczenie innych opcji:
Operacje na bazie danych sklepu PrestaShop 1.6 – 1.7
Logujemy się do programu PhpMyAdmin na nowym sklepie i wybieramy bazę danych zdeklarowaną w pliku:
/config/settings.inc.php
(dla wersji PrestaShop 1.6.x)
Lub w pliku:
/app/config/parameters.php
(dla wersji PrestaShop 1.7.x).
Na początku konieczne będzie wyczyszczenie tabel związanych z cechami:
TRUNCATE `ps_feature`; TRUNCATE `ps_feature_lang`; TRUNCATE `ps_feature_product`; TRUNCATE `ps_feature_shop`; TRUNCATE `ps_feature_value`; TRUNCATE `ps_feature_value_lang`;
Potem wgrywamy plik SQL pozyskany ze starego sklepu.
Dodatkowo musimy upewnić się czy mamy dobre oznaczenie języka. Należy sprawdzić jaki ID posiada język na nowym sklepie.
Aktualizacja języka wygląda w ten sposób:
UPDATE `ps_feature_lang` SET `id_lang` = 2 WHERE `id_lang` = 6;
UPDATE `ps_feature_value_lang` SET `id_lang` = 2 WHERE `id_lang` = 6;
Przy założeniu, że:
STARY SKLEP posiada język polski o ID = 6
NOWY SKLEP posiada język polski o ID = 2
Jeśli Twój sklep ma inne ID – zmień to w w/w zapytaniach.
Ponadto musimy wykonać wypełnienie dodatkowej tabeli danymi związanymi z ID sklepu (multistore):
INSERT INTO `ps_feature_shop`( `id_feature`, `id_shop`) SELECT `id_feature`,1 FROM `ps_feature`;
Jeśli Twój sklep posiada inne ID (domyślnie w multistore dla 1 sklepu ID =1) uwzględnij to w zapytaniu.
Gotowe! Po wyczyszczeniu cache sklepu (więcej na ten temat: ) cechy powinny być dostępne na nowym sklepie w analogiczny sposób jak na starym.
grafika: pexels.com
[…] Przeniesienie cech produktów ze sklepu PrestaShop w wersji 1.4.x do 1.6.x lub 1.7.x […]