Jak wyłączyć różne rozmiary obrazów tworzonych automatycznie przez WordPressa

 

Jak wyłączyć różne rozmiary obrazów tworzonych automatycznie przez WordPressa

Kiedy instalacja WordPressa jest starsza niż las, a jej zawartość jest aktualizowana z pewną regularnością, tak jak w przypadku tej, którą teraz czytasz, nagromadzenie obrazów może stać się dużym problemem, nigdy lepiej nie powiedzieć.

Pozwalanie na gromadzenie się obrazów z czasem ma konsekwencje w dłuższej perspektywie.

Inodes lub inodes

Te niewiadome. Inode to dowolny plik lub folder na serwerze. Dotyczy to obrazów, e-maili, logów, skryptów, arkuszy stylów itp. Wszystko liczy się jako 1, bez względu na to, co.

Zdecydowana większość hostingów, pomimo reklamowania "nieograniczonej przestrzeni", zawsze posiada limit ilości inodów. Choć zdarzają się bardzo hojni, LucusHostna przykład, ogranicza je do więcej niż wystarczającej ilości jeden milionale w innych hostach ta kwota może pójść w dół znacznie.

Może kiedyś będziesz potrzebował migracji i nie będziesz mógł, jeśli nie pozbędziesz się ogromnej ilości tych inodów, zostałem wyrzucony z hostingu z tego powodu.

Marnowanie zasobów

Hosting gór nieużywanych obrazów to marnowanie przestrzeni dyskowej, która mogłaby być wykorzystana na coś niezbędnego, a także przyczynia się do tego, że nie jest tak lekka, jak powinna być.

Jest również bardzo prawdopodobne, że jeśli zaniedbałeś je przez lata, wiele z nich nie jest zoptymalizowanych lub, z jakiegokolwiek powodu (zmiana szablonu lub resztki wtyczek na przykład), złamali dodając więcej wiecznych żądań i więcej zużycia zasobów.

Ważne jest, aby mieć plan

A przed planem - aktualny backup całego bloga, łącznie z bazą danych. Zawsze to rób.

Celem jest zmniejszenie liczby obrazów do dwóch. Oryginalny wgrany (odpowiednio duży i w szablonie pozwalającym na wyświetlanie skalowalne w dowolnym miejscu) plus miniaturka.

Oprócz posiadania planu musimy wiedzieć, jak określić, które zdjęcia są używane, a których możemy się bez problemu pozbyć. Aby to zrobić, należy koniecznie wiedzieć, co je tworzy.

Pierwszą i najważniejszą rzeczą jest przejście przez wszystkie używane rozmiary i sprawdzenie, gdzie każdy z nich jest generowany. W wielu przypadkach są one tworzone z szablonu z kodu, który znajduje się zazwyczaj w pliku functions.php i zazwyczaj wygląda mniej więcej tak (zależy to od każdego szablonu i może go nawet nie być lub nie istnieć, jak w przypadku GeneratePress).

add_theme_support( 'post-thumbnails' );
set_post_thumbnail_size( 223, 137, true );
add_image_size( 'schema-featured', 680, 350, true ); // Featured.
add_image_size( 'schema-featured2', 1360, 700, true ); // Featured x 2.
add_image_size( 'schema-related', 211, 150, true ); // Related.
add_image_size( 'schema-related2', 422, 300, true ); // Related x 2.
add_image_size( 'schema-widgetthumb', 70, 60, true ); // Widget.
add_image_size( 'schema-widgetthumb2', 140, 120, true ); // Widget x 2.
add_image_size( 'schema-widgetfull', 300, 200, true ); // Sidebar full width.
add_image_size( 'schema-slider', 772, 350, false ); // Slider.
add_image_size( 'schema-slider2', 1544, 700, false ); // Slider x 2.

Ten przykład pochodzi z pliku functions.php szablonu Schemat szablon, którego używałem wcześniej ten, którego używam teraz.

Tutaj było to łatwe, wystarczyło zmienić true na false (lub usunąć linię), aby uniknąć generowania rozmiaru podczas przesyłania nowego. Informowała również do czego służy. Przed "cappingiem" rozmiaru upewnij się, że nie zamierzasz używać funkcji, dla której został wygenerowany.

Dotyczy to tylko nowych zdjęć, które przesyłasz, a nie zdjęć, które już przesłałeś. O tym jak się ich pozbyć porozmawiamy później.

Zauważ, że niektóre z twoich wtyczek i widżetów mogą również tworzyć kopie w innych rozmiarach dla konkretnego zastosowania. Będziesz musiał zapoznać się z dokumentacją dla każdego z nich i śledzić ścieżkę obrazów, aby zlokalizować ich źródło i miejsce docelowe.

Zanim przejdę dalej, zakładam, że wiesz już skąd pochodzi każdy obrazek i że wiesz, że możesz się obejść bez tego, który postanowiłeś usunąć

Miniatury, które tworzy WordPress

To jest zazwyczaj ta chuda część. Nadal nazywają je miniaturkami, ale chodzi o to, że tworzy również inne znacznie grubsze rozmiary.

Od wersji 5.3 WordPress generuje siedem dodatkowych obrazów dla każdego obrazu, który przesyłasz za pośrednictwem biblioteki mediów i / lub edytora wizualnego. Więc za każdym razem, gdy przesyłasz obraz, dodajesz osiem do całości.

Jeśli dodasz inne możliwe z szablonu, wtyczek i widgetów, to może to być nawet 12 lub więcej.

Są to te, które tworzy WordPress:

Miniatura (150x150px)
Średni rozmiar (300x300px)
Duży rozmiar (1024x1024px)

Średni duży 768px
2x Średni duży 1536px
2x duży 2048px
Przeskalowany 2560px

Z pierwszych trzech możemy pominąć 300px i 1024px oraz zmniejszyć miniaturkę ze 150x150px do 100x100px. Aby to zrobić, wystarczy wejść w Ustawienia/Media i zmienić rozmiary i ustawić 0 (zero) na tych, których nie chcemy generować.

Jak wyłączyć różne rozmiary obrazów tworzonych automatycznie przez WordPressa 1

Teraz, w moim przypadku, miniaturka 100x100 będzie tą wyświetlaną w bibliotece mediów. Zaoszczędziliśmy już kilkaset, może tysiące obrazków i kawał Kb czy Mb zmniejszając ich ilość i rozmiar.

Dla pozostałych czterech możemy "wyrejestrować" tworzenie każdego z nich osobno, dodając te snippety w functions.php naszego szablonu lub poprzez plugin Plugin Code Snippets.

Wyłączenie szerokości 768px, proporcjonalność

function shapeSpace_disable_medium_large_images($sizes) {
	
	unset($sizes['medium_large']); // disable 768px size images
	return $sizes;
	
}
add_filter('intermediate_image_sizes_advanced', 'shapeSpace_disable_medium_large_images');

Wyłączenie szerokości 1536px, proporcjonalność

function shapeSpace_disable_2x_medium_large_images($sizes) {
	
	unset($sizes['1536x1536']); // disable 2x medium-large size
	return $sizes;
	
}
add_filter('intermediate_image_sizes_advanced', 'shapeSpace_disable_2x_medium_large_images');

Wyłączenie szerokości 2048px, proporcjonalność

function shapeSpace_disable_2x_large_images($sizes) {
	
	unset($sizes['2048x2048']); // disable 2x large size
	return $sizes;
	
}
add_filter('intermediate_image_sizes_advanced', 'shapeSpace_disable_2x_large_images');

Wyłączenie skalowania obrazu (2560px)

add_filter('big_image_size_threshold', '__return_false');

Jeśli wolisz używać pojedynczego kodu dla wszystkich wygenerowanych rozmiarów, które chcesz wyłączyć, w tym tych o innych możliwych rozmiarach, możesz pociągnąć ten i usunąć linie dla tych, które chcesz zachować lub kontrolować z ustawień mediów WordPress, jak w przypadku pierwszych trzech.

Wyłączenie wszystkich rozmiarów

// Deshabilitar los tamaños de imagen generados
function shapeSpace_disable_image_sizes($sizes) {
	
	unset($sizes['thumbnail']);    // disable thumbnail size
	unset($sizes['medium']);       // disable medium size
	unset($sizes['large']);        // disable large size
	unset($sizes['medium_large']); // disable medium-large size
	unset($sizes['1536x1536']);    // disable 2x medium-large size
	unset($sizes['2048x2048']);    // disable 2x large size
	
	return $sizes;
	
}
add_action('intermediate_image_sizes_advanced', 'shapeSpace_disable_image_sizes');

// Deshabilitar el tamaño de la imagen escalada
add_filter('big_image_size_threshold', '__return_false');

// Deshabilitar otros tamaños de imagen
function shapeSpace_disable_other_image_sizes() {
	
	remove_image_size('post-thumbnail'); // Deshabilita imágenes agregadas con set_post_thumbnail_size ()
	remove_image_size('another-size');   // Deshabilita cualquier otro tamaño de imagen agregado
	
}
add_action('init', 'shapeSpace_disable_other_image_sizes');

Źródło: Jeff Starr's blog. Jak wyłączyć Automatycznie generowane obrazy WordPressa - Kompletny poradnik. Radzę skopiować kod z tego postu, wysoce zalecane, na wypadek, gdyby coś zostało wklejone tutaj źle.

Jeff Starr jest również twórcą kilku różnych wtyczek i jeden z nich robi to samo (Nie próbowałem) na wypadek, gdybyś był jednym z tych, którzy wolą nie komplikować swojego życia.

Załadujmy pozostałe obrazy

OK, podobno mamy już wyłączone tworzenie tych wszystkich dodatkowych rozmiarów, które nie są nam potrzebne przy wgrywaniu obrazka.

Teraz wgrywamy obraz testowy i sprawdzamy, czy te dodatkowe rozmiary nie są generowane. W moim przypadku wygląda to tak:

Jak wyłączyć różne rozmiary obrazów tworzonych automatycznie przez WordPressa 2

ale jak usunąć te wszystkie wgrane zdjęcia, które teraz zostały i są niewykorzystane?

Istnieją co najmniej dwie niezbyt skomplikowane opcje.

Ręcznie. Trochę bardziej żmudne i czasochłonne. Możesz je wyszukać w menedżerze plików Cpanel lub w kliencie FTP, używając unikalnych nazw plików, takich jak 300x300, 768x, 1536x itd. i usunąć je.

Jeśli masz dużo obrazów, możesz użyć wtyczki Regeneruj miniatury plugin, który nadal dobrze wykonuje swoją pracę.

To, co robi ta wtyczka, klasyk od Alexa Millsa, to regeneracja miniatur przesłanych obrazów. Możesz to zrobić po kolei z biblioteki mediów lub wszystkie naraz, jeśli nie ma ich zbyt wiele.

Po zainstalowaniu i aktywowaniu, gdy otworzysz go z "Tools/Regenerate thumbnails" zobaczysz to:

Jak wyłączyć różne rozmiary obrazów tworzonych automatycznie przez WordPressa 3

Tam zobaczysz listę niemal wszystkich rozmiarów, z których korzysta WordPress, ale ponieważ już "wyrejestrowaliśmy" tworzenie większości z nich, warto przetestować z jednym obrazkiem testowym, zaznaczając również opcję"Usuń pliki miniatur starych rozmiarów bez rejestracji..."

Jak wyłączyć różne rozmiary obrazów tworzonych automatycznie przez WordPressa 4

Jeśli wszystko poszło dobrze z tym testem jednego obrazu, możesz teraz masowo regenerować miniatury dla wszystkich XXXX załączników (pierwszy przycisk). Dzięki temu usuniemy wszystkie nadmiarowe rozmiary za jednym zamachem.

Zrobiłem to niedawno i pamiętam, że masowa regeneracja nie powiodła się, chyba dlatego, że było tak wiele obrazów (ponad 20K) i proces został przerwany w niektórych punktach, więc zdecydowałem się zrobić to w blokach 200 obrazów z biblioteki multimediów.

Jak wyłączyć różne rozmiary obrazów tworzonych automatycznie przez WordPressa 5

Po wykonaniu zadania możesz odinstalować wtyczkę.

Dobrym pomysłem, teraz, gdy jesteś pewien, że zyskałeś wystarczająco dużo miejsca, jest wykorzystanie tego do tworzenie zoptymalizowanych kopii Twoich obrazów .jpg w formacie .webp format bez żadnych kosztów z wtyczką Litespeed Cache jeśli Twój hosting działa pod Litespeed.


Suscríbete por email para recibir las viñetas y los artículos completos y sin publicidad