Zaloguj się
Rozpocznij

Dokumentacja Easy Digital Downloads

Dokumentacja, materiały referencyjne i samouczki dla Easy Digital Downloads 

Zablokowano Ajax administratora

Jeśli otrzymasz następującą wiadomość, prawdopodobnie Twoja witryna nie będzie działać poprawnie:

Twoja witryna wydaje się blokować interfejs ajax WordPress. Może to powodować problemy z Twoim sklepem.

Plik
admin-ajax.php jest używany przez Easy Digital Downloads i wiele innych wtyczek do wykonywania typowych akcji w Twoim sklepie, takich jak stosowanie kodu rabatowego, walidacja płatności, finalizacja zakupu. Jest to bardzo ważny plik. Jeśli jest niedostępny, jest bardzo prawdopodobne, że Twój sklep nie będzie działał zgodnie z oczekiwaniami.

Użyj poniższych sugestii, aby pomóc zidentyfikować problem i go rozwiązać.

Konflikty wtyczek

Niektóre wtyczki celowo blokują dostęp do
admin-ajax.php. Odpowiedzialne za to są często następujące typy wtyczek:

  • Wtyczki zabezpieczeń. Te wtyczki często mają ustawienie, które wyłącza admin-ajax.php, lub podobne ustawienie blokujące dostęp do plików administracyjnych.
  • Wtyczki wyłączające dostęp do /wp-admin/ dla osób niebędących administratorami.
  • Wtyczki minifikacji. Te wtyczki zapewniają poprawę wydajności poprzez zmniejszanie rozmiaru plików javascript (i innych). Ten proces często psuje javascript w Easy Digital Downloads, który jest odpowiedzialny za komunikację z admin-ajax.php
  • Wtyczki buforowania. Czasami wtyczki buforowania mogą powodować problemy z admin-ajax.php poprzez uszkodzenie javascriptu tworzącego żądania ajax lub po prostu poprzez uniemożliwienie dostępu do admin-ajax.php

Jeśli ajax nie działa w Twojej witrynie i masz jakąkolwiek wtyczkę pasującą do powyższych opisów, spróbuj ją dezaktywować, a następnie przetestuj, czy
admin-ajax.php ponownie staje się dostępny. Jeśli tak, możesz nadal używać wtyczki, wystarczy znaleźć problematyczne ustawienie w wtyczce i je wyłączyć.

Firewalle hostingu

Czasami firmy hostingowe konfigurują firewall na Twojej witrynie, który ma na celu jej ochronę, ale ma również niekorzystny skutek blokowania dostępu do
admin-ajax.php. Jeśli masz problemy z ajax, sprawdź, czy Twój hosting ma firewall i go wyłącz. Jeśli ajax zacznie działać po wyłączeniu firewalla, znalazłeś winowajcę. Jeśli ajax jest nadal niedostępny po wyłączeniu firewalla, zazwyczaj możesz go bezpiecznie ponownie włączyć.

Reguły w Twoim pliku .htaccess

Plik
.htaccess używany na serwerach Apache może czasami zawierać specjalne reguły zaprojektowane do ochrony Twojej witryny przed atakami. Czasami te reguły są stosowane zbyt ogólnie i nieumyślnie wyłączają dostęp do admin-ajax.php. Jeśli Twój ajax nie działa, sprawdź, jakie reguły zawiera Twój plik .htaccess. Jeśli istnieją jakiekolwiek reguły poza tymi pokazanymi poniżej, usuń je i sprawdź, czy ajax zacznie działać ponownie.

Twój plik
.htaccesszazwyczaj zawiera reguły wyglądające tak (są one doskonale bezpieczne i normalne):

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

Problemy między domenami

admin-ajax.php musi być uruchomiony w tej samej domenie, z której jest wywoływany. Przykład: jeśli Twoja witryna to
https://www.example.com, a próbujesz wywołać https://example.com/wp-admin/admin-ajax.php, to nie zadziała. Zwróć uwagę na www w pierwszym adresie URL i brak www w drugim.

Dotyczy to również niezgodności protokołu SSL. https://www.example.com/wp-admin/admin-ajax.php nie może wywołać https://www.example.com/wp-admin/admin-ajax.php. Zwróć uwagę na https w pierwszym adresie URL i brak https w drugim.

Czy ten artykuł był pomocny?

Zacznij sprzedawać już dziś!

Dołącz do ponad 50 000 sprytnych właścicieli sklepów i zacznij korzystać z najłatwiejszego sposobu sprzedaży produktów cyfrowych za pomocą WordPress.

Copyright © 2025 Sandhills Development, LLC

[universally_switcher]