10 najczęstszych problemów z konfiguracją PrestaShop i ich rozwiązania

Posted On: Sep 14, 2018

Categories:

Tags: Konfiguracja PrestaShop , prestashop , problemy , konfiguracje , moduły , problemy

PrestaShop to koszyk zakupowy typu open source, np. każdy, kto zna PHP, MySQL i CSS, może wprowadzać w nim zmiany, aby dostosować go do własnych celów. PrestaShop został uruchomiony w 2007 roku, a teraz jego najnowsza wersja 1.7x jest użyteczna w sklepach e-commerce. Użytkownicy zgłaszają, że wersja 1.7x nadal nie jest stabilna w porównaniu do 1.6x, tzn. użytkownicy napotykają błędy i pomyłki podczas konfiguracji i dostosowywania. Dlatego też, będąc renomowaną firmą w PrestaShop, FMEModules zawsze zaleca swoim klientom pozostanie przy wersji 1.6x, dopóki do wersji 1.7x nie zostanie dodana większa stabilność.

Nasz dzisiejszy post skupia się na rozwiązywaniu problemów z konfiguracją PrestaShop w celu uzyskania różnych funkcjonalności w PrestaShop. Być może masz ten sam problem i rozwiązanie tego samouczka może ci pomóc jak urok. Tak więc podano tutaj Top 5 PrestaShop Configuration Issues and their Solution;

Pytanie nr 1: Cześć, chcę wiedzieć, jakie są sposoby włączania raportowania błędów w trybie debugowania dla różnych wersji PrestaShop?

Odpowiedź: W przypadku PrestaShop 1.7 przejdź do Advanced Parameters > Wydajność i włącz.

Dla PrestaShop 1.5.3-1.6 otwórz plik: config/defines.inc.php  (używając FTP lub panelu sterowania hostingiem)

zmień false-->true:

define('_PS_MODE_DEV_',false);

define('_PS_MODE_DEV_',true);

Dla PrestaShop 1.4-1.5.3

  • otwórz plik: config/config.inc.php  (używając FTP lub panelu sterowania hostingiem)
  • zmień wyłączone -->on

@ini_set('display_errors','off');

@ini_set('display_errors','on');

Uwaga:

  • Po zakończeniu nie zapomnij wyłączyć tej opcji.
  • Lepiej sprawdzić błędy, logując się do obszaru hostingu i sprawdzając tam dziennik błędów PHP
  • Musisz użyć programu FTP, aby włączyć raportowanie błędów PrestaShop

Pytanie nr 2: Cześć, używam PrestaShop 1.5.3.1 i chcę znaleźć adresy e-mail klientów, którzy kupili jakiś produkt w moim sklepie. Jakie zapytanie SQL muszę uruchomić w tym przypadku?

Odpowiedź: Możesz uruchomić to zapytanie w dowolnym miejscu w bazie danych

SELECT C.email FROM ps_customer C 

INNER JOIN ps_orders O on C.id_customer = O.id_customer

INNER JOIN ps_order_detail OD on O.id_order = OD.id_order

WHERE OD.product_id =3

Zmień identyfikator produktu zgodnie z posiadanymi przez Ciebie produktami na liście, tj. użyj tego identyfikatora, którego adres e-mail chcesz sprawdzić. To zapytanie po prostu zwróci Ci identyfikator klienta, który kupił ten produkt. Ponadto, jeśli chcesz znaleźć adresy e-mail klientów, którzy kupili inne produkty, możesz użyć w tym celu polecenia IN w następujący sposób;

SELECT C.email FROM ps_customer C

INNER JOIN ps_orders O on C.id_customer = O.id_customer

INNER JOIN ps_order_detail OD on O.id_order = OD.id_order

WHERE OD.product_id IN (3,45,47,94,102)

Pytanie nr 3: Cześć, przesłałem plik CSV ze zdjęciami, a pliki ze zdjęciami mają bardzo duże rozmiary. Myślę, że PrestaShop zapisuje te pliki gdzie indziej w swojej bazie danych. Czy mogę usunąć pliki obrazów o dużych rozmiarach, aby nie spowalniały serwera witryny?

Odpowiedź: Tak, masz rację, że PrestaShop zapisuje te pliki po przesłaniu ich przez Ciebie za pośrednictwem pliku CSV. Możesz więc usunąć te pliki z serwera. Jeśli jednak chcesz zmienić rozmiary obrazów, nie będzie to możliwe po usunięciu.

Pytanie nr 4: Cześć, próbuję przesłać pliki CSV obrazów i podać adres Dropbox w polach obrazów, ponieważ chcę przesyłać obrazy z Dropboxa. To nie pomaga mi w przesyłaniu plików obrazów. Pomóż mi, gdzie przesłać adres, aby pomóc w imporcie obrazu w formacie CSV?

Odpowiedź: Musisz uzyskać bezpośredni link do obrazu z Dropboxa. Tak, musisz wkleić adres w polu obrazu. Wystarczy dodać &raw=1 na końcu linku Dropbox, a to zadziała.

Pytanie nr 5: Cześć, chcę zmienić mój sklep na multistore. Czy mogę użyć „udostępniania dostępnych ilości” bez resetowania ilości produktów do zera.

Odpowiedź: Tak, możesz to zrobić za pomocą prostej modyfikacji. Tylko musisz zmienić funkcję resetowania classes/stock/StockAvailable.php na:

public static function resetProductFromStockAvailableByShopGroup(ShopGroup $shop_group)

{

 

                             if ($shop_group->share_stock) 

                                {

$shop_list = Shop::getShops(false, $shop_group->id, true);

if (liczba($shop_list) > 0) {

$id_shops_list = implode(', ', $shop_list);

return Db::getInstance()->execute('AKTUALIZUJ '._DB_PREFIX_.'stock_available SET id_shop=0,id_shop_group=1 GDZIE id_shop_group=0');

} } else {

return Db::getInstance()->execute('AKTUALIZUJ '._DB_PREFIX_.'stock_available SET id_shop=0,id_shop_group=1 GDZIE id_shop_group=0');

 

działa z PS 1.6

Pytanie nr 6: Cześć, konfiguruję mój nowy sklep. Próbowałem dokonać zakupu testowego, zalogowałem się jako klient i wysłałem zamówienie. Użyłem formularza kontaktowego i użyłem identyfikatora zamówienia i produktu. Ale gdy otrzymałem e-mail na adres administratora, zawierał on tylko informacje o adresie e-mail klienta i wiadomość. Jak mogę uzyskać pełne informacje?

Odpowiedź: Miałem ten sam problem z 1.5. Aby to naprawić:

  • Przejdź do /mails/en/.
  • Otwórz contact.html, contact.txt, contact_form.html i contact_form.txt.
  • Dodaj id_order} w miejscu, w którym chcesz umieścić odniesienie do zamówienia.

Pytanie nr 7: Cześć, chcę dodać wiadomość klienta, którą wysyła przy kasie, do dowodu dostawy w formacie PDF.

Odpowiedź: Musisz użyć klasy message. Poniższy kod w klasie wiadomości pomoże zwrócić wiadomość w liście przewozowym.

$result =Message::getMessagesByOrderId($order->id)

Pytanie nr 8: Cześć, jestem nowy w PrestaShop i chcę edytować pasek nawigacyjny w PrestaShop 1.7, np. dodawać lub usuwać menu i podmenu.

Odpowiedź: przejdź do modułów > modułów > zainstalowanych modułów, a znajdziesz moduł „wtmegamenu”, który jest pomocny w zarządzaniu menu nawigacyjnym. Aby zmienić nazwy elementów menu, musisz przejść do Przejdź do katalogu -> Kategorie i tam dokonać przepisywania.

Pytanie nr 9: Cześć, zainstalowałem mapowanie obrazów w moim sklepie i użyłem dodatkowego menu dla wersji 1.6. Zmapowałem obraz z produktem. Kiedy przechodzę do kategorii, najeżdżam na nią kursorem, a link pojawia się jako wyskakujące okienko, ale nie otwiera się po kliknięciu lewym przyciskiem myszy. Jednak klikam prawym przyciskiem myszy i otwieram go na nowej stronie, działa. Jak rozwiązać ten problem?

Odpowiedź: Musisz przełączyć opcję „fopen” z „off” na „on” w skryptach php na serwerze. Znajdziesz to w ustawieniach swojego serwera hostingu.

Pytanie nr 10: Cześć, chcę dodać linię pod nazwą sklepu. Jak to jest możliwe?

Odpowiedź: Jest to możliwe poprzez edycję kodu PHP w klasie AddressFormat.

Uwaga: Na te pytania odpowiadają najlepsi programiści społeczności i nie odzwierciedlają one modułów FMEModules.