Po napotkaniu błędu 404 plik szablonu 404.php może zostać użyty do wyświetlenia niestandardowego komunikatu o błędzie. Jest to udokumentowane w artykule Hierarchia szablonów .
Moim celem jest stworzenie niestandardowych stron błędów dla błędów 401, 403 i 500. Próbowałem utworzyć pliki 401.php, 403.php i 500.php w katalogu mojego motywu, ale to nie działa.
Jak mogę utworzyć niestandardowe strony błędów 401, 403 i 500 w WordPress?
php
htaccess
404-error
template-hierarchy
500-internal-error
henrywright
źródło
źródło
Odpowiedzi:
Strony błędów są obsługiwane przez .HTACCESS, jeśli używasz Apache, skorzystasz z
ErrorDocument
dyrektywy i dodasz do niej status oraz adres URL.Wygląda to tak w twoim pliku .htaccess:
Możesz użyć poniższej funkcji poniżej. Spowoduje to dynamiczne dodanie potrzebnych plików HTACCESS lub możesz to zrobić ręcznie.
1. Dodaj strony:
Następnie należy przejść do pulpitu nawigacyjnego i utworzyć strony jak każdą normalną stronę („Pulpit nawigacyjny”> „Strony”> „Nowy”). Można je zatytułować, co tylko chcesz, po prostu upewnij się, że ślimak jest taki sam jak w poniższej funkcji (Slug: error-401, error-403, error-404, error-500). Możesz także użyć szablonu strony, aby utworzyć układ i styl dla tych konkretnych stron. W tym celu postępuj zgodnie z instrukcjami Kodeksu WordPress .
2. Dodaj funkcję:
NB !! UWAGI NA TEMAT POWYŻSZEJ FUNKCJI
Podczas przenoszenia witryny lub zmiany struktury adresu URL
Należy pamiętać o powyższej funkcji, chociaż sprawdzi ona, czy dyrektywy ErrorDocument już istnieją przed zapisaniem ich w pliku HTACCESS, ale nie zmieni przepisów dyrektyw ErrorDocument, jeśli zmienisz lub przeniesiesz bloga, aby odzwierciedlał zaktualizowane lokalizacje stron. Najpierw musisz usunąć istniejące dyrektywy ErrorDocument w pliku HTACCESS, a następnie ponownie uruchomić tę funkcję, aby utworzyć nowe dyrektywy.
Prawidłowy hak, aby uruchomić funkcję TYLKO RAZ
Inną rzeczą, na którą należy zwrócić uwagę, jest ta funkcja - użycie
init
akcji będzie się uruchamiało za każdym razem, gdy strony się ładują, co jest bardzo niepotrzebne i marnotrawcze, dlatego sugerowałbym dodanie jej do wtyczki i użycieregister_activation_hook
raczej tak, aby uruchamiała się tylko raz po aktywacji wtyczkiUprawnienia do plików
Konieczne jest również, aby Twój .htaccess był zapisywalny podczas korzystania z powyższej funkcji, więc upewnij się, że ma on odpowiednie uprawnienia do plików, na przykład CHMOD777.
źródło