Press "Enter" to skip to content

Hurtowe narzucenie dodatkowego kosztu wysyłki dla wszystkich lub określonych produktów

Admin 0

Dodatkowe koszty wysyłki dla danego produktu w Presta Shop

W Presta Shop możemy dla danego produktu wymusić określoną dodatkową cenę wysyłki. Np. jeśli dany produkt jest wielkogabarytowy i jego wysłanie jest kosztowne – możemy określić dodatkową dopłatę. Tylko dla niego. Niezależnie od innych ustawień w wysyłkach sklepu. Tę funkcjonalność wprowadzamy tutaj:

Jednak każdą taką kwotę musimy określać indywidualnie w każdym produkcie z osobna. Sprawa się komplikuje jak mamy więcej niż kilka produktów które musimy tak zmodyfikować. Presta Shop nie posiada wbudowanych funkcji zmieniania hurtowego takich cen.

Możemy się z kolei posłużyć odpowiednim zapytaniem do bazy danych.

Połączenie z bazą danych

Na początek nawiązujemy połączenie z bazą danych. Jak uzyskać parametry policzenia i zalogować się do PhpMyAdmin – opisaliśmy w innym naszym artykule.

Przed manipulowaniem w SQL warto także zrobić kopię bezpieczeństwa. Jak to wykonać opisane jest m.in. tutaj.

Wywołujemy komendę w konsoli SQL.

Przyklady wywołań.

Ustawienie dodatkowej wysyłki 500 zł dla wszystkich produktów w sklepie:


UPDATE `ps_product_shop` SET `additional_shipping_cost` = 500;
UPDATE `ps_product` SET `additional_shipping_cost` = 500;

Dla produktów z określonej puli ID (id produktów można odczytać na liscie produktów w dziale Admin -> Katalog -> Produkty). Tutaj dla produktów o ID 2,3,4,5:


UPDATE `ps_product_shop` SET `additional_shipping_cost` = 500 WHERE `id_product` IN (2,3,4,5);
UPDATE `ps_product` SET `additional_shipping_cost` = 500 WHERE `id_product` IN (2,3,4,5);

Dla produktów z określonej kategorii (tutaj dla kategorii o ID = 12). ID kategorii odczytamy w dziale Admin -> Katalog -> Kategorie


UPDATE `ps_product_shop` SET `additional_shipping_cost` = 500 WHERE `id_category_default` = 12;
UPDATE `ps_product` SET `additional_shipping_cost` = 500 WHERE `id_category_default` = 12;

Share This:

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *