Mam kilkanaście stron pod opieką i ciągle uczę się czegoś nowego. Przeglądam oferty różnych wtyczek i pluginów do WordPress, śledzę promocje. Dziś rzuciła mi się w oczy oferta na AppSumo – dożywotni dostęp do jednej ze znanych usług pozwalających zoptymalizować obrazy na stronie.

Jako, że i tak była to jedna z pozycji, na mojej liście kontrolnej w obszarze poprawy szybkość ładowania stron – pomysł testu darmowej wersji wtyczki wydał mi się świetny.

Postanowiłem przetestować ów plugin i zostałem zaskoczony. Nie chodziło o to, że darmowa wersja wtyczki pozwoli mi skompresować tylko 100 obrazków – to wiedziałem i byłem przygotowany na jakieś wydatki. Zaskoczeniem było to, że na stronie, którą założyłem kilka miesięcy wcześniej plugin wykrył ponad tysiąc obrazów do przerobienia. Fakt, w FAQ usługi wyraźnie pisało, że każdy obrazek to tak naprawdę oryginał plus od 6 do 15 wersji zmniejszonych, ale tysiąc obrazków?

Zaskoczenie wynikało z tego że strona zawierała dosłownie kilka podstron i kilka wpisów. Częściowo tajemnica wyjaśniła się kiedy zajrzałem do zakładki motywy gdzie znalazłem kilkanaście motywów jakie testowałem przed uruchomieniem strony. Mogłem przypuszczać że większość tych obrazków znajdowała się właśnie w tych nieużywanych motywach. Jednak ich usunięcie niewiele dało – nadal miałem kilkaset obrazków za dużo jak na mój gust.

Postanowiłem sprawdzić czy nie istnieją pluginy które pozwalają przeskanować WordPress a i jego bibliotekę mediów na wypadek nieużywanych w motywach, stronach i wpisach obrazków. Okazało się że tak (no shit, Sherlock!). W ten sposób proste (z pozoru) zadanie poprawienia wydajności zmieniło się w szukanie, testowanie, robienie tabelek porównawczych, aż w końcu – pisanie tego wpisu. Jako, że idealnie pasuje tu jeden gif – wklejam go poniżej.

źródło – https://giphy.com/gifs/llbEoVMhkLngWlzVVa

Z kilku wtyczek, jakie znalazłem, postanowiłem przetestować dwie – Media Cleaner i WPS Cleaner. Jako „pacjentów” wybrałem blogu elimu i blog osobisty.

Elimu istnieje od roku 2009 (ponad 10 lat!) i zawiera ponad 1300 wpisów, więc wydało mi się dobrym poligonem testowym. Zapewne zawiera setki jeśli nie tysiące niewykorzystywanych plików graficznych. Co za tym idzie wykorzystanie na elimu jakiegokolwiek komercyjnego pluginu do optymalizacji obrazków spowodowałoby natychmiastowe wykorzystanie wszystkich kredytów bo zazwyczaj właśnie o taki sposób rozliczenia per ilość zoptymalizowanych grafik opiera się model biznesowy tego typu wtyczkę / usług.

Blog Palika to znacznie mniejsza ilość wpisów i krótszy staż, ale skoro kilkumiesięczna strona mogła uzbierać tysiąc obrazków, to tym bardziej kilkuletni dziennik z około setką notek.

Usuwanie „osieroconych” mediów z pomocą Media Cleaner

Na pierwszy rzut poszłedł blog elimu i wtyczka Media Cleaner, który lojalnie ostrzegł mnie, że korzystam z DIVI, zatem niektóre z funkcji sprzątania będą wymagały wersji pro. Mimo to postanowiłem chociaż przeskanować bibliotekę mediów i zobaczyć co zaoferuje mi wtyczka. Skanowanie trwało około 5 minut. Jak na fakt, że strona ma zgromadzone ponad 10 lat wpisów to całkiem niezły wynik. Skanowanie dało efekt – 204 potencjalne okazje do posprzątania.

Interfejs do usuwania (lub ignorowania) znalezionych pozycji jest prosty – ot tabela z nazwą, linkiem do miejsca gdzie możemy medium edytować, ścieżką, rozmiarem i powodem umieszczenia w tabeli. Nie przefiltrujemy listy po tytule, autorze czy dacie dodania, co pewnie mogłoby się przydać w wypadku większych porządków. Wtyczka oferuje „kosz” oraz listę ignorowanych plików, co na pewno pomaga w wypadku jakichś pomyłek. Na próbę usunąłem kilka obrazów za pomocą Media Cleaner i wszystko przebiegło poprawnie.

Interfejs wtyczki Media Cleaner

Sprzątanie mediów i nie tylko z pomocą WPS Cleaner

Wtyczka WPS Cleaner oferuje znacznie więcej niż tylko usuwanie obrazków. Jej zastosowanie można porównać do aplikacji typu CC Cleaner czy podobnych. Mamy tu całą gamę zakładek – możemy na przykład usunąć wszystkie rewizje wpisów i stron (co może odchudzić naszą bazę danych), wyrzucić spam, oraz przejrzeć i skasować nieużywane tagi, kategorie, wtyczki, motywy, obrazy i pliki. Na blogu mającym ponad 10 lat ilość rewizji wpisów może nieco zaskoczyć – w wypadku elimu było to prawie 10 tysięcy.

Jest nawet ikonka „miotły” która sprząta wszystko co tylko się da (zostawiając jedynie potrzebne i używane rzeczy) ale nie odważyłem się jej użyć (mimo posiadania 2 kopii zapasowych).

Zakładka „Medias” pokazuje nieużywane na stronie elementy, oferuje też możliwość pobrania wszystkich „niepotrzebnych” mediów do pliku zip oraz oznaczanie pozycji na liście jako „excluded”, przez co nie zostaną usunięte. Przeglądanie listy nie jest najwygodniejsze. Maksymalnie 50 elementów na stronę, brak filtrowania, sortowanie po autorze i dacie to trochę mało, no ale wtyczka jest za darmo, więc nie narzekam. Brakuje choćby rozmiaru pliku, który widzieliśmy w poprzedniej wtyczce.

Przejrzenie listy prawie 200 elementów, oznaczenie 20-tu do pominięcia i usunięcie reszty – jakieś 10 minut. Przyznam, że spodziewałem się więcej roboty.

Przy okazji na jednej z zakładek znalazłem ciekawą sekcję z plikami – wtyczka pokazuje jakie nie są dystrybuowane z WordPress i pozwala je usunąć – fajna opcja.

Nie taki diabeł straszny…?

Wielkie sprzątanie na elimu okazało się nie aż tak znowu wielkie. Backup całej strony zmalał o kilkanaście megabajtów, co oznacza, że albo pluginy słabo odnajdują nieużywane obrazy, albo tacy z nas porządniccy i nie śmiecimy za bardzo. Sprawdzę zatem jak obie wtyczki zadziałają na moim prywatnym blogu. Przeskanowałem bibliotekę i od razu zauważyłem dziwną rzecz. Na liście „nieużywanych” znalazły się obrazki i pliki video umieszczone w treści wpisów. Co prawda w samych wpisach były umieszczone miniaturki, ale linkowały one do wersji „pełnej”, a dodatkowo link ten był „opakowany” w efekt lightbox za pomocą wtyczki featherlight. Sprawdziłem na jednym pliku i faktycznie – jego usunięcie zaowocowało tym, że klikając w obrazek dostałem błąd „nie mamy pańskiego obrazka i co nam pan zrobisz”.

Podsumowanie

Jak widać – obie wtyczki nie bez potrzeby ostrzegają o możliwości popsucia sobie strony jeśli bezmyślnie (i bez kopii zapasowej) usuniemy wszystkie znalezione przez nie media. Nie każdy sposób osadzenia pliku czy obrazka w treści zostanie przez wtyczki „sprzątające” odpowiednio odczytany i mogą zdarzyć się niemiłe wypadki. Niemniej warto wypróbować je na własnym setupie, a w razie wątpliwości na środowisku testowym.