Pojawia się krytyczny błąd PHP po dodaniu krótkiego kodu formularza zamówień hurtowych do strony, ale strona ładuje się poprawnie po jego usunięciu? Przyczyną prawie zawsze jest nieprawidłowa składnia krótkiego kodu, niski limit pamięci PHP lub konflikt z innym wtyczką. Ten artykuł omawia najczęstsze scenariusze i przeprowadzi Cię przez proces identyfikacji dokładnej przyczyny.
Zanim zaczniesz: sprawdź składnię swojego krótkiego kodu
W wersji 3 WooCommerce Wholesale Order Form poprawny format krótkiego kodu to:
[wwof_product_listing id="XX"]
gdzie XX to numeryczny identyfikator Twojego formularza zamówień. Krótki kod umieszczony bez atrybutu id lub z nieprawidłowym identyfikatorem spowoduje wyświetlenie komunikatu o błędzie lub niczego.
Aby znaleźć poprawny krótki kod dla swojego formularza:
- Przejdź do Wholesale Suite → Order Forms w swoim panelu administracyjnym WordPress.
- Otwórz formularz, który chcesz osadzić.
- Skopiuj krótki kod wyświetlany w edytorze formularza.
- Wklej go na stronie, na której chcesz, aby formularz się pojawił.


Jeśli używałeś [wwof_order_form] bez atrybutu id, ten format krótkiego kodu nie jest już używany. Zastąp go krótkim kodem skopiowanym z edytora formularza.
Typowe problemy i rozwiązania
Na stronie wyświetla się „Nie określono identyfikatora formularza zamówień” lub „Wystąpił błąd konfiguracji”
Administratorzy widzący „Nie określono identyfikatora formularza zamówień.” używają krótkiego kodu bez wymaganego atrybutu id. Zastąp krótki kod tym skopiowanym z Wholesale Suite → Order Forms.
Odwiedzający niebędący administratorami widzą zamiast tego „Wystąpił błąd konfiguracji tego formularza. Skontaktuj się z administratorem witryny.” Jest to ten sam problem. Popraw krótki kod, a komunikat zniknie dla obu grup.

Formularz zamówień w ogóle się nie wyświetla
Formularz zamówień wyświetla się tylko wtedy, gdy jego status to Opublikowany. Formularz zapisany jako szkic nie pojawi się na stronie frontowej, nawet jeśli krótki kod jest poprawnie umieszczony. Niezalogowani goście i klienci zobaczą zamiast tego komunikat o ograniczeniu „Dostęp zabroniony” („Nie masz uprawnień do przeglądania tego formularza zamówień”), więc formularz w wersji szkicowej często wygląda jak problem z uprawnieniami, a nie brakujący formularz.
- Przejdź do Wholesale Suite → Order Forms.
- Sprawdź status formularza. Jeśli pokazuje Szkic, otwórz go i kliknij Opublikuj.

Pojawia się krytyczny błąd PHP, gdy krótki kod jest na stronie
Krytyczne błędy, które pojawiają się tylko wtedy, gdy obecny jest krótki kod, są spowodowane konfliktem wtyczek, wtyczką do buforowania lub optymalizacji, która nieprawidłowo obsługuje pakiet JavaScript formularza zamówień, lub zbyt niskim limitem pamięci PHP. Wykonaj poniższe kroki w kolejności.
Krok 1: włącz WP_DEBUG, aby zobaczyć rzeczywisty błąd
- Otwórz plik
wp-config.phpswojej witryny (znajdujący się w głównym katalogu WordPress). - Znajdź linię
define( 'WP_DEBUG', false );i zmieńfalsenatrue. - Bezpośrednio pod tą linią dodaj:
define( 'WP_DEBUG_LOG', true ); - Zapisz plik i przeładuj stronę, która powoduje błąd.
- Otwórz
wp-content/debug.log. - Zanotuj dokładny komunikat o błędzie i ścieżkę do pliku, na którą wskazuje.
Uwaga: Zachowaj ten komunikat o błędzie i ścieżkę do pliku. Będą Ci potrzebne, jeśli skontaktujesz się z pomocą techniczną.
Zobacz Debugowanie w WordPress, aby uzyskać pełne informacje o dostępnych stałych.
Krok 2: sprawdź limit pamięci PHP
Formularz zamówienia ładuje aplikację JavaScript, która wykonuje kilka żądań w tle do Twojego serwera. Jeśli PHP zabraknie pamięci podczas tego procesu, może wystąpić krytyczny błąd. Zalecane minimum dla stron WooCommerce, w tym tych z WooCommerce Wholesale Order Form, to 256 MB.
Aby sprawdzić swój obecny limit, przejdź do WooCommerce → Status → Status systemu i poszukaj wiersza Limit pamięci PHP. Jeśli jest poniżej 256 MB, skontaktuj się ze swoim dostawcą hostingu, aby go zwiększyć, lub dodaj następującą linię do wp-config.php:
define( 'WP_MEMORY_LIMIT', '256M' );

Krok 3: przełącz się na domyślny motyw
Motyw, który dodaje konfliktujący JavaScript lub nadpisuje szablony WooCommerce, może zepsuć formularz zamówienia. Szybkie wykluczenie tego problemu można osiągnąć, przełączając się na domyślny motyw.
- Przejdź do Wygląd → Motywy w panelu administracyjnym WordPress.
- Aktywuj Storefront lub Twenty Twenty-Four.
- Przeładuj stronę z krótkim kodem.
Jeśli błąd zniknie przy aktywnym domyślnym motywie, Twój oryginalny motyw jest źródłem konfliktu. Aktywuj go ponownie i udostępnij dziennik debugowania zespołowi pomocy technicznej Twojego motywu.
Krok 4: zidentyfikuj konfliktujący wtyczkę
- Przejdź do Wtyczki → Zainstalowane wtyczki.
- Dezaktywuj wszystkie wtyczki oprócz WooCommerce i WooCommerce Wholesale Order Form.
- Przeładuj stronę z krótkim kodem. Jeśli błąd zniknął, przyczyną jest konflikt wtyczek.
- Aktywuj wtyczki pojedynczo, przeładowując stronę po każdej z nich. Ostatnia wtyczka, którą aktywowałeś, gdy błąd ponownie się pojawił, jest tą konfliktującą.

Znane konflikty wtyczek i obejścia
Kilka wtyczek optymalizujących i buforujących wymaga specjalnego traktowania, aby działać obok formularza zamówienia. Wtyczka zawiera wbudowaną kompatybilność z niektórymi z nich, co oznacza, że nie są potrzebne żadne ręczne kroki.
WP Rocket. Wholesale Order Form automatycznie wyklucza strony zawierające jego krótki kod z pamięci podręcznej stron WP Rocket. Nie jest potrzebna żadna ręczna reguła wykluczenia.
SiteGround Optimizer. Wtyczka automatycznie wyklucza swoje skrypty z kombinacji i minifikacji JavaScript i CSS SiteGround Optimizer. Jeśli nadal występują problemy po potwierdzeniu, że jest to konflikt, ręcznie wyłącz Łączenie plików JavaScript i Minimalizowanie plików JavaScript (oraz odpowiednie opcje łączenia i minimalizacji CSS) dla strony zawierającej formularz zamówienia.
Inne wtyczki buforujące (WP Super Cache, W3 Total Cache, LiteSpeed Cache itp.). Dodaj adres URL strony formularza zamówienia do listy wykluczeń pamięci podręcznej wtyczki i wyłącz minifikację oraz łączenie kodu JavaScript dla tej strony.
Kreatory stron (Elementor, Divi, WPBakery). Jeśli skrócony kod jest umieszczony w elemencie skróconego kodu kreatora stron, a formularz się nie ładuje, spróbuj umieścić go bezpośrednio w edytorze bloków WordPress. W przypadku Breakdance natywna obsługa skróconych kodów jest dostępna od wersji 3.1.0 WooCommerce Wholesale Order Form.
Co uwzględnić podczas kontaktu z pomocą techniczną
Jeśli błąd będzie się powtarzał po wykonaniu powyższych kroków, zespół pomocy technicznej Wholesale Suite będzie potrzebował następujących szczegółów do zbadania sprawy:
- Dokładny komunikat o błędzie z pliku
wp-content/debug.log - Lista aktywnych wtyczek w momencie wystąpienia błędu
- Twoja wersja PHP i bieżący limit pamięci (widoczne w WooCommerce → Status → Status systemu)
- Nazwa i wersja aktywnego motywu
- Wszelkie zmiany wprowadzone na stronie krótko przed pojawieniem się błędu
Często zadawane pytania
Jaki jest poprawny skrócony kod dla Formularza Zamówień Hurtowych?
Poprawny skrócony kod w wersji 3 to [wwof_product_listing id="XX"], gdzie XX to identyfikator formularza zamówienia. Skopiuj go bezpośrednio z edytora formularza w Wholesale Suite → Order Forms.
Dlaczego formularz zamówienia wyświetla komunikat „Wystąpił błąd konfiguracji tego formularza”?
Ten komunikat pojawia się, gdy atrybut id jest brakujący w skróconym kodzie lub gdy podany identyfikator formularza zamówienia nie istnieje. Sprawdź, czy Twój skrócony kod zawiera poprawny id skopiowany z edytora formularza.
Dlaczego mój formularz zamówienia nie pojawia się, mimo że skrócony kod jest poprawny?
Najczęstszą przyczyną jest to, że formularz jest nadal zapisany jako Wersja robocza. Formularz zamówienia jest renderowany na stronie front-endowej dopiero po ustawieniu jego statusu na Opublikowany. Otwórz formularz w Wholesale Suite → Order Forms i kliknij Opublikuj. Niezalogowani goście mogą również zobaczyć komunikat „Odmowa dostępu”, jeśli formularz jest ograniczony do określonych ról.
Czy muszę skonfigurować moją wtyczkę buforującą, aby działała z formularzem zamówienia?
Dla WP Rocket i SiteGround Optimizer nie jest wymagana żadna ręczna konfiguracja. Wtyczka automatycznie obsługuje kompatybilność. W przypadku innych wtyczek buforujących dodaj stronę formularza zamówienia do listy wykluczeń pamięci podręcznej i wyłącz minifikację kodu JavaScript dla tej strony.
Potrzebujesz pomocy?
Jeśli masz pytanie lub napotkasz jakiekolwiek problemy, jesteśmy tutaj, aby pomóc.
- Użytkownicy wersji Premium: Otwórz zgłoszenie wsparcia
- Użytkownicy wersji darmowej: Odwiedź nasze forum społecznościowe
