Zawartość artykułu
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.