Istnieją dwa sposoby, w jakie można przesłać plik w witrynie opartej o WordPress. Chociaż korzystanie z panelu administracyjnego jest najłatwiejszą opcją, możesz również użyć FTP. Wgrywanie plików odbywa się w przypadku trzech sytuacji.
- Przesyłanie plików multimedialnych
- Przesyłanie motywów
- Przesyłanie wtyczek
W zależności od wykonywanej czynności, możesz napotkać różne rodzaje błędów w WordPressie. Zanim wyjaśnione zostaną błędy i przedstawione rozwiązania, upewnij się, że przesyłasz obrazy tylko poprzez Bibliotekę mediów lub z edytora postów w WordPressie. W przeciwnym razie obrazy, które przesyłasz przez FTP, nie pojawią się w Bibliotece mediów.
Spis treści
Niewspierany rodzaj/format pliku
WordPress pozwala tylko na przesyłanie określonego typu formatów plików. Innymi słowy, nie pozwala na przesyłanie niektórych typów plików, takich jak przykładowo SVG i WOFF. Jeśli spróbujesz przesłać zastrzeżone pliki, zobaczysz komunikat o błędzie wskazujący, że nie możesz przesłać danego typu pliku.
Jeśli nadal chcesz używać plików SVG, istnieją wtyczki takie jak SVG Support, które mogą Ci pomóc. W przypadku innych typów plików może być konieczne przesłanie za pomocą FTP, a następnie użycie adresu URL do wstawienia na swojej stronie. Alternatywnie możesz użyć dowolnego adresu URL do zasobu z innego serwera, aby osadzić go na swojej stronie.
Limit rozmiaru wgrywanych plików
Serwer lub konfiguracja WordPressa może mieć ustawione limity rozmiaru pliku, który możesz przesłać w swojej witrynie. Może to być obraz lub motyw lub wtyczka, które próbujesz przesłać za pośrednictwem panelu wp-admin.
Przechodząc do “Media > Dodaj nowy” znajdziesz informację o tym jaki jest maksymalny limit rozmiaru pliku do przesłania. Gdy ten limit będzie zbyt mały, otrzymasz błąd podczas próby przesłania dużego pliku niż ten dozwolony rozmiar.
Rozwiązaniem może okazać się zmiana parametrów PHP, gdzie miedzy innymi można określić rozmiary możliwych do przeslania plików. Instrukcję jak to zrobić znajdziesz TUTAJ.
Blokowanie przez firewall
Jeśli korzystasz z Cloudflare w wersji premium lub innych wtyczek bezpieczeństwa, które stosują ochronę firewall (WAF), może to być przyczyną niepowodzenia w przesyłaniu plików. Na przykład, Cloudflare automatycznie włącza zestaw reguł zapory, aby zapobiec przesyłaniu potencjalnie złośliwego kodu. Taka ochrona jest z natury bardzo dobrym rozwiązaniem, niemniej niekiedy działa zbyt restrykcyjnie i może uniemożliwić Ci wgrywanie plików, motywów i wtyczek.
Rozwiązaniem tutaj jest przejście do konta Cloudflare i przeanalizowanie logów WAF, aby znaleźć, która reguła powoduje blokadę. Następnie musisz ręcznie wyłączyć regułę tymczasowo i przesłać plik. Jeśli reguła blokuje cię konsekwentnie, wtedy może być konieczne wyłączenie jej na stałe. Podobnie należy postąpić w przypadku korzystania z innych wtyczek bezpieczeństwa.
Zbyt duża rozdzielczość obrazów
WordPress ogranicza również maksymalną dozwoloną rozdzielczość dla obrazów, które przesyłasz. Maksymalna rozdzielczość to 2560×2560 pikseli i każdy obraz, który załadujesz mający wyższą rozdzielczość, zostanie przeskalowany w dół do maksymalnie tych wymiarów. W niektórych przypadkach możesz zobaczyć błąd HTTP pokazujący, że rozdzielczość jest zbyt duża. Jeśli naprawdę chcesz zachować duże oryginalne obrazy, to dodaj następujący kod w pliku functions.php, który znajduje się najczęściej w katalogu głównym motywu aktywnego na Twojej stronie.
add_filter( 'big_image_size_threshold', '__return_false' );
Brak uprawnień do wgrywania plików
Brakujące uprawnienia mogą uniemożliwić przesłanie obrazów/plików i pokazać błąd. W niektórych przypadkach, twoje przesłane obrazy i pliki nie pojawią się w bibliotece mediów, chociaż możesz je przesłać z powodzeniem. Również, będziesz mógł przesłać motywy i wtyczki bez problemu. Przejdź do menu “Ustawienia > Media” w panelu administracyjnym i sprawdź, czy włączyłeś opcję “Organizuj moje pliki do folderów opartych na miesiącu i roku”.
Ta opcja jest domyślnie włączona, co powoduje utworzenie nowego folderu dla każdego miesiąca/roku w celu przechowywania przesłanych plików. Na początku miesiąca, jeśli nowy miesięczny folder nie zostanie utworzony z jakiegokolwiek powodu, wtedy WordPress może zakomunikować brak uprawnień. Rozwiązaniem jest stworzenie poprawnego folderu poprzez FTP i sprawdzenie, czy uprawnienia do plików są ustawione prawidłowo.
Domyślne uprawnienia dla wszystkich folderów w katalogu “/wp-content/uploads/” to 755, a poszczególne pliki będą miały 644. Możesz ustawić prawidłowe uprawnienia i sprawdzić, czy to rozwiązuje twój błąd przesyłania plików.