Biblioteka mediów nie daje pewnej odpowiedzi na pytanie, które obrazy w WordPressie rzeczywiście wyświetlają się bez tekstu alternatywnego. Pokazuje metadane załączników, ale nie zawsze odzwierciedla kod zapisany w artykułach, stronach, opisach produktów czy blokach Gutenberga. Obraz może mieć uzupełnione pole ALT w bibliotece, a mimo to w opublikowanym wpisie nadal występować jako <img alt=""> albo nawet bez atrybutu alt.
W drugą stronę działa to podobnie. Puste alt="" nie zawsze oznacza błąd. Dla grafiki dekoracyjnej jest to prawidłowa informacja dla czytnika ekranu: ten obraz należy pominąć. Automatyczne uzupełnienie każdego pustego pola nazwą pliku lub frazą SEO pogarsza dostępność zamiast ją poprawiać.
Alt Text Tools rozwiązuje pierwszą część problemu: znajduje obrazy osadzone w treści i eksportuje ich dane do pliku CSV. Nie pisze opisów, nie zmienia bazy danych i nie obiecuje kompletnego audytu całej witryny. To narzędzie do sporządzenia listy roboczej. Dobrze użyte oszczędza godziny. Źle użyte prowadzi do masowego wpisywania przypadkowych ALT-ów.
Sprawa ma też wymiar formalny. Podmioty publiczne w Polsce mają ustawowy obowiązek zapewniania dostępności cyfrowej, a od 28 czerwca 2025 roku wymagania obejmują również określone usługi sektora prywatnego, między innymi usługi handlu elektronicznego, z wyjątkami przewidzianymi w przepisach. Sam raport z wtyczki nie potwierdza zgodności z WCAG, ale szybko ujawnia jeden z częstszych problemów dotyczących treści nietekstowych.
Co dokładnie wykrywa Alt Text Tools — i czego nie znajdzie
Alt Text Tools jest bezpłatną wtyczką rozwijaną przez NerdPress. Według stanu na sierpień 2026 roku dostępna jest wersja 0.4.0, aktywna na ponad 800 instalacjach i przetestowana z WordPressem do wersji 7.0.4. Koszt instalacji wynosi 0 zł — nie ma płatnego planu ani limitu eksportów.
Po aktywacji wtyczka dodaje pozycję Narzędzia → Alt Text Tools. Domyślnie dostęp do niej mają administratorzy. W większej redakcji można nadać dostęp innej roli przez uprawnienie manage_alt_text_tools albo zmienić wymagane uprawnienie filtrem nerdpress_alt_text_tools_cap.
Wtyczka analizuje obrazy znalezione w treści wpisów, stron i obsługiwanych niestandardowych typów treści. Następnie generuje plik CSV, w którym znajdują się obrazy, ich aktualne wartości ALT oraz linki prowadzące bezpośrednio do edycji materiału, w którym zostały użyte.
Raport zawiera wszystkie znalezione obrazy, a nie wyłącznie błędy. W praktyce zobaczysz trzy główne sytuacje:
- MISSING — element
<img>nie ma atrybutualt; - EMPTY — atrybut istnieje, ale ma pustą wartość
alt=""; - wpisany tekst — obraz ma niepustą wartość, którą nadal trzeba ocenić pod względem jakości.
Różnica między MISSING a EMPTY nie jest kosmetyczna.
<img src="baner-promocja.jpg">
W tym przypadku atrybutu alt brakuje. Czytnik ekranu może odczytać nazwę pliku, adres obrazu albo inną mało użyteczną informację.
<img src="ozdobna-linia.svg" alt="">
Tutaj pusty atrybut istnieje. Jeżeli linia jest wyłącznie dekoracją, kod jest prawidłowy i nie wymaga poprawy.
<img src="ekspres.jpg" alt="Czarny ekspres przelewowy z dzbankiem o pojemności 1,2 l">
Obraz ma tekst alternatywny. Pozostaje sprawdzić, czy opis odpowiada jego funkcji na konkretnej stronie.
Największa zaleta Alt Text Tools polega na analizowaniu treści, w której obraz został osadzony, a nie tylko danych załącznika. W blokach obrazu wartość ALT może być zapisana razem z kodem wpisu. Późniejsza zmiana pola „Tekst alternatywny” w bibliotece mediów nie musi więc zaktualizować wcześniej opublikowanego artykułu.
Inaczej zachowują się obrazy generowane dynamicznie. Miniatura wpisu, zdjęcie pobierane przez szablon albo element wyświetlany funkcją wp_get_attachment_image() może odczytywać bieżącą wartość z metadanych załącznika podczas każdego renderowania strony. W jednym serwisie działają zatem dwa mechanizmy:
- statyczny ALT zapisany w treści bloku lub wpisu;
- dynamiczny ALT pobierany z biblioteki mediów.
Dlatego po znalezieniu błędu trzeba ustalić, gdzie dokonać zmiany. Edycja wyłącznie biblioteki może nie naprawić artykułu. Edycja wyłącznie artykułu może z kolei pozostawić błędną miniaturę generowaną przez motyw.
Alt Text Tools nie obejmuje całego WordPressa. Po eksporcie nadal trzeba sprawdzić ręcznie:
- obrazy zapisane w plikach motywu oraz w nagłówku i stopce;
- automatycznie generowane archiwa, listy wpisów i wyniki wyszukiwania;
- elementy zapisane w opcjach motywu, polach ACF lub danych kreatora stron;
- galerie produktów, miniatury kategorii i część elementów WooCommerce;
- karuzele, megamenu, wyskakujące okna i widżety zewnętrzne;
- obrazy dodane jako
background-imagew CSS; - ikony SVG oraz treści wewnątrz ramek
iframe.
Grafika ustawiona jako tło CSS w ogóle nie ma atrybutu alt. Jeżeli przekazuje istotną informację, problemu nie rozwiąże żaden generator ALT-ów. Informację trzeba wtedy umieścić również jako zwykły tekst albo przebudować element na semantyczny obraz.
To najważniejsze ograniczenie wtyczki: raport CSV nie jest certyfikatem kompletności. Jest szybkim pierwszym przebiegiem audytu treści.
Audyt krok po kroku: eksport CSV, priorytety i poprawki
Najlepsze rezultaty daje praca w określonej kolejności. Zaczynanie od przepisywania wszystkich istniejących opisów jest stratą czasu, dopóki na stronie pozostają obrazy całkowicie pozbawione atrybutu alt.
- Zainstaluj właściwą wtyczkęW panelu WordPressa przejdź do Wtyczki → Dodaj nową i wyszukaj „Alt Text Tools”. Sprawdź nazwę autora: NerdPress. Zainstaluj i aktywuj wtyczkę.
Narzędzie nie modyfikuje obrazów podczas skanowania, ale na dużym sklepie lub portalu uruchamiaj eksport poza godzinami największego ruchu. Analiza wielu tysięcy wpisów może zużyć zauważalną część dostępnej pamięci PHP.
- Uruchom eksportOtwórz Narzędzia → Alt Text Tools i rozpocznij generowanie pliku. Na typowej stronie eksport zajmuje około 10–20 sekund. W rozbudowanym serwisie może trwać kilka minut.
Jeżeli przeglądarka bez końca pokazuje oczekiwanie albo plik się nie pobiera, pierwszym podejrzanym jest limit pamięci PHP. Podniesienie go z 128 MB do 512 MB może rozwiązać taki problem. Nie edytuj jednak
.htaccessw ciemno — błędna dyrektywa potrafi wywołać błąd 500. Bezpieczniejsza droga to zmiana limitu w panelu hostingu albo zgłoszenie do administratora serwera. - Poprawnie otwórz CSVW polskiej wersji Excela plik rozdzielany przecinkami czasem otwiera się jako jedna długa kolumna. Zamiast dwukrotnego kliknięcia użyj:
Dane → Z tekstu/CSV → separator: przecinek → kodowanie: UTF-8.
LibreOffice Calc wyświetla okno wyboru separatora podczas otwierania. W Arkuszach Google należy użyć importu pliku i wskazać automatyczne wykrywanie albo przecinek.
- Dodaj kolumny roboczeNie edytuj jedynej kopii eksportu. Zapisz plik roboczy i dodaj cztery kolumny:
- Priorytet;
- Decyzja;
- Osoba odpowiedzialna;
- Status poprawki.
Sam plik traktuj jak dokument wewnętrzny. Zawiera adresy obrazów, tytuły treści i linki edycyjne, więc nie powinien trafiać do publicznego folderu ani niezabezpieczonego załącznika.
- Najpierw odfiltruj MISSINGNadaj znalezionym przypadkom kolejność:
- P1 — obrazy funkcjonalne: grafiki będące linkami lub przyciskami, logo prowadzące do strony głównej, obrazkowe menu, banery sprzedażowe, elementy koszyka i procesu zamówienia;
- P2 — obrazy informacyjne: instrukcje, wykresy, schematy, mapy, zdjęcia produktów i fotografie przekazujące informacje niewystępujące w tekście;
- P3 — ilustracje redakcyjne: zdjęcia uzupełniające artykuły, sylwetki autorów, galerie oraz elementy o mniejszym wpływie na wykonanie zadania;
- do oceny — EMPTY: obrazy, które mogą być prawidłowo oznaczone jako dekoracyjne.
Dopiero po tych grupach poprawiaj opisy typu
IMG_8462.jpg, listy słów kluczowych i teksty skopiowane z nazw produktów. Są słabe, ale całkowity brak atrybutu ma wyższy priorytet. - Edytuj konkretną instancję obrazuUżyj linku edycyjnego z CSV i otwórz wskazany wpis. Kliknij blok obrazu, znajdź pole Tekst alternatywny i wpisz opis albo świadomie oznacz grafikę jako dekoracyjną.
Następnie podejmij drugą decyzję:
- jeżeli obraz zawsze pełni tę samą funkcję, uzupełnij również jego ALT w Bibliotece mediów;
- jeżeli ten sam plik jest używany w różnych kontekstach, ustawiaj opis osobno w poszczególnych blokach.
Zdjęcie zespołu może mieć na stronie „O nas” ALT z imionami i funkcjami osób. To samo zdjęcie użyte jako nieistotne tło nagłówka powinno mieć
alt="". Jeden uniwersalny opis nie obsłuży poprawnie obu zastosowań. - Ponów eksportPo zakończeniu pierwszej partii uruchom Alt Text Tools jeszcze raz. W zeskanowanej treści liczba pozycji MISSING powinna spaść do zera. Liczba pozycji EMPTY nie musi i nie powinna wynosić zero — prawidłowa witryna zwykle zawiera obrazy dekoracyjne.
- Sprawdź frontend, nie tylko panelOtwórz reprezentatywne podstrony i naciśnij
F12, a następnie przejdź do zakładki Console. Poniższy kod wypisze obrazy, które na aktualnej stronie nie mają atrybutualt:console.table( [...document.images] .filter(img => !img.hasAttribute('alt')) .map(img => ({ src: img.currentSrc || img.src, link: img.closest('a')?.href || '', html: img.outerHTML.slice(0, 180) })) );Kod niczego nie zapisuje. Analizuje wyłącznie aktualnie wyświetloną stronę. Uruchom go przynajmniej na:
- stronie głównej;
- pojedynczym wpisie i stronie;
- archiwum kategorii oraz wynikach wyszukiwania;
- nagłówku, stopce i menu mobilnym;
- stronie produktu i liście produktów;
- koszyku oraz zamówieniu;
- stronie błędu 404 i otwieranych oknach modalnych.
Dzięki temu wychwycisz obrazy generowane przez motyw, WooCommerce, kreator stron lub JavaScript, których nie było w pliku CSV.
Przy aktywnie rozwijanym sklepie lub portalu taki audyt wykonuj raz w miesiącu oraz po zmianie motywu, migracji albo większym imporcie produktów. Dla niewielkiej strony firmowej wystarczy kontrola raz na kwartał. Gdy wtyczka była potrzebna tylko do jednego eksportu, po zakończeniu prac można ją usunąć zamiast pozostawiać kolejne narzędzie wymagające aktualizacji.
Jak poprawiać teksty ALT bez szkody dla dostępności
Nie każdy obraz potrzebuje opisu. Każdy element <img> powinien jednak mieć atrybut alt — pusty albo zawierający tekst dobrany do funkcji obrazu.
Najprostszy test brzmi: czy po usunięciu grafiki użytkownik straci informację albo możliwość wykonania działania?
Jeżeli nie, zastosuj alt="". Jeżeli tak, przekaż w tekście alternatywnym brakującą informację.
Obraz informacyjny
ALT powinien oddawać znaczenie, a nie wyliczać każdy szczegół kadru.
- Źle: „zdjęcie produktu”
- Lepiej: „Granatowy plecak miejski o pojemności 20 l, widok z przodu”
Dla zwykłej fotografii zazwyczaj wystarcza około 5–15 słów. To praktyczna wskazówka, nie limit techniczny. WCAG nie ustala uniwersalnej maksymalnej liczby znaków.
Obraz będący linkiem lub przyciskiem
Opisuj działanie albo miejsce docelowe, nie wygląd ikony.
- Źle: „strzałka w prawo”
- Lepiej: „Przejdź do koszyka”
- Źle: „ikona PDF”
- Lepiej: „Pobierz cennik w pliku PDF”
Gdy obok ikony znajduje się już widoczny napis „Pobierz cennik”, sama ikona zwykle powinna mieć alt="", aby czytnik ekranu nie powtarzał tej samej informacji.
Logo
Jeżeli logo jest jedyną treścią linku prowadzącego do strony głównej, sensownym opisem będzie na przykład „Nazwa firmy — strona główna”. Jeżeli obok widnieje już identyczna nazwa firmy należąca do tego samego linku, logo może pozostać dekoracyjne.
Grafika zawierająca tekst
Jeżeli tekst z obrazu nie występuje nigdzie indziej, ALT powinien przekazać jego istotną treść. Baner z napisem „Dostawa gratis do 31 sierpnia przy zamówieniu od 200 zł” nie może mieć opisu „baner promocyjny”. Użytkownik potrzebuje warunków promocji, nie informacji o formacie grafiki.
Wykres lub diagram
Nie próbuj upychać całego zestawu danych w jednym atrybucie. Zastosuj krótki opis, na przykład „Wykres wzrostu liczby zamówień w latach 2024–2026”, a szczegółowe wartości umieść w akapicie albo tabeli obok. Długi ALT nie zastąpi dostępnej prezentacji danych.
Obraz dekoracyjny
Ozdobne kształty, separatory, fotografie budujące nastrój i ilustracje powtarzające treść sąsiadującego tekstu powinny mieć:
alt=""
Nie wpisuj tam „dekoracja”, „tło” ani nazwy pliku. Czytnik ekranu nadal odczyta taki opis, tworząc niepotrzebny hałas.
Zdjęcia produktów
Opis powinien rozróżniać warianty, jeżeli różnice mają znaczenie zakupowe:
- „Drewniane krzesło Oslo w kolorze dębu, widok z przodu”;
- „Drewniane krzesło Oslo w kolorze dębu, widok oparcia”;
- „Detal połączenia siedziska z nogą krzesła Oslo”.
Kopiowanie tego samego ALT-u do dziesięciu fotografii galerii odbiera użytkownikowi informację o tym, co zmienia się między ujęciami. Z drugiej strony nie ma sensu opisywać nieistotnego kąta ustawienia aparatu, gdy kolejne zdjęcie nie wnosi żadnej nowej informacji.
Frazy SEO
Naturalna nazwa produktu, model, kolor lub zastosowanie mogą znaleźć się w tekście alternatywnym, jeżeli pomagają zidentyfikować obraz. Lista w rodzaju „buty sportowe tanie buty sklep buty damskie promocja” nie opisuje grafiki i jest zwyczajnym spamem słowami kluczowymi.
Automatyczne generatory również wymagają kontroli. Rozpoznają obiekty na zdjęciu, ale nie zawsze wiedzą, po co obraz znalazł się na konkretnej stronie. Brak automatycznego uzupełniania w Alt Text Tools jest niedogodnością przy tysiącach produktów, ale jednocześnie ogranicza ryzyko hurtowego opublikowania nieprawidłowych opisów.
Końcowa kontrola powinna odpowiedzieć na trzy pytania:
- Czy użytkownik bez obrazu otrzymuje tę samą istotną informację?
- Czy tekst ALT nie powtarza bez potrzeby zdania stojącego obok?
- Czy opisuje funkcję obrazu, a nie tylko jego wygląd?
Kolejność prac ma znaczenie: najpierw MISSING przy elementach funkcjonalnych i informacyjnych, następnie ocena EMPTY, a dopiero na końcu poprawianie istniejących, lecz słabych opisów.
FAQ: najczęstsze pytania o Alt Text Tools
Czy Alt Text Tools automatycznie uzupełnia brakujące teksty ALT?
Nie. Wtyczka tworzy raport CSV i podaje linki do edycji treści. Nie zapisuje opisów w bibliotece ani we wpisach.
Czy każdy wynik EMPTY oznacza błąd?
Nie. alt="" jest prawidłowy dla obrazu dekoracyjnego lub powtarzającego informację widoczną obok. Błędem będzie pusty ALT przy obrazie informacyjnym albo funkcjonalnym.
Czy zmiana ALT-u w Bibliotece mediów naprawi stare artykuły?
Nie zawsze. Statyczne bloki mogą przechowywać własną wartość ALT w treści wpisu. Obrazy generowane dynamicznie przez motyw mogą natomiast pobierać aktualną wartość z biblioteki. Trzeba sprawdzić konkretny wpis i jego wersję na froncie.
Czy wtyczka znajdzie wszystkie obrazy w WordPressie?
Nie. Może pominąć obrazy motywu, nagłówka, stopki, archiwów, pól ACF, kreatorów stron, galerii produktów, widżetów, CSS i JavaScriptu. Po eksporcie konieczna jest kontrola reprezentatywnych podstron.
Co zrobić, gdy plik CSV się nie pobiera?
Odczekaj kilka minut i uruchom eksport poza godzinami dużego ruchu. Następnie sprawdź limit pamięci PHP. Przy rozbudowanych witrynach rozsądnym poziomem roboczym jest 512 MB, ale zmianę najlepiej wykonać w panelu hostingu lub z pomocą administratora.
Od którego błędu zacząć poprawki?
Najpierw usuń MISSING przy linkach, przyciskach, instrukcjach, wykresach i zdjęciach produktów. Potem oceń pozycje EMPTY. Na końcu popraw nazwy plików, powtórzenia i teksty przeładowane frazami SEO. Audyt zakończ dopiero po ponownym eksporcie i sprawdzeniu nagłówka, stopki, archiwów oraz stron sprzedażowych na froncie.

