Wymagane dane.
Aby to zrobić potrzebujesz dostępu do narzędzia phpmyadmin na Twoim serwerze. Uzyskaj go od Twojego providera serwerowego. Przeważnie są to określone adresy na Twoim serwerze. Opisywaliśmy to w artykule:
Dostępy do bazy znajdziesz w plikach:
app/config/parameters.php
(dla wersji PrestaShop 1.7)
albo:
config/settings.inc.php
(dla wersji PrestaShop 1.6)
Wracając do sedna. Jeśli chcesz wylistować wszystkie przypisania cech i atrybutów do produktów wywołaj te zapytania SQL poprzez wiersz polecenia SQL (zakładka SQL).
Wylistowanie przypisanych cech (feature)
SELECT pl.id_product, pl.name, pfl.name FROM ps_product_lang pl LEFT JOIN ps_feature_product pfp ON pl.id_product = pfp.id_product LEFT JOIN ps_feature_lang pfl ON pfl.id_feature = pfp.id_feature WHERE (pfl.id_lang = 1 AND pl.id_lang = 1)
Wylistowanie przypisanych atrybutów (wartości atrybutów)
SELECT DISTINCT pl.id_product, pl.name, pal.name FROM ps_product_lang pl LEFT JOIN ps_product_attribute ppa ON ppa.id_product = pl.id_product LEFT JOIN ps_product_attribute_combination ppac ON ppa.id_product_attribute = ppac.id_product_attribute LEFT JOIN ps_attribute_lang pal ON pal.id_attribute = ppac.id_attribute WHERE (pal.id_lang = 1 AND pl.id_lang = 1)
Oczywiście użyliśmy tutaj domyślnego prefixu „ps_” jeśli Twoje tabele mają inne – zmień to odpowiednio w zapytaniach.
Zwrtacane dane
Pokażmy to na demo dla wersji PrestaShop 1.7. Link do demo: http://ps17.smartpro.vdl.pl/
Zwracane dane dotyczące cech:
Widać to na przykładzie produktu o ID = 1:
Natomiast w przypadku atrybutów:
W czym może być to pomocne i czy są jakieś ograniczenia?
Wynikowe dane mozemy łatwo wyeksportować np. do uproszczonego pliku Excela CSV poprzez opcję pod tabelą ze zwracanymi danymi:
Query results operations >> Export >> CSV
Zwracane dane mogą być pomocne dla właścicieli sklepu jako przegląd jakie produkty posiadają jakie cechy albo atrybuty. Szczególnie jak asrotyment jest bardzo obszerny. W/w zapytania nie mają znaczenia jaka jest liczba produktów – może być ich równie dobrze kilkanaście jak i kilkanaście tysięcy.