Как да деактивирате различните размери на изображенията, създавани автоматично от WordPress

 
Как да деактивирате различните размери на изображенията, създавани автоматично от WordPress

Когато инсталацията на WordPress е по-стара от една гора и съдържанието й се актуализира с известна регулярност, както е в случая с тази, която четете сега, натрупването на изображения може да се превърне в голям проблем, никога не е било по-добре да се каже.

Ако оставите изображенията да се натрупват с течение на времето, това ще има последици в дългосрочен план.

Инодовете или inodes

Тези неизвестни. Inode е всеки файл или папка, които се намират на сървъра. Това включва изображения, имейли, дневници, скриптове, таблици със стилове и др. Всичко се брои за 1, без значение какво тежи.

Голяма част от хостовете, въпреки че рекламират "неограничено пространство", винаги имат ограничение на броя на инодите. Въпреки че някои от тях са много щедри, например LucusHost ги ограничава до повече от достатъчната сума от един милион, но при други хостове тази сума може да бъде значително по-ниска.

Може би един ден ще трябва да мигрирате и няма да можете да го направите, освен ако не се отървете от огромно количество от тези иноди, бях изгонен от хостинг по тази причина.

Разхищение на ресурси

Съхраняването на планини от неизползвани изображения води до загуба на дисково пространство, което може да се използва за нещо необходимо, а също така допринася за това той да не е толкова лек, колкото трябва да бъде.

Също така е много вероятно, ако сте ги пренебрегвали в продължение на години, много от тях да не са оптимизирани или по някаква причина (например промяна на шаблона или останки от плъгин) да са се счупили, което е довело до повече вечни заявки и по-голямо потребление на ресурси.

Важното е да имате план

И преди план, скорошно резервно копие на целия ви блог, включително базата данни. Винаги правете това.

Целта е броят на изображенията да се сведе до две. Оригиналното качено изображение (с достатъчен размер и в шаблон, който позволява да се показва навсякъде) плюс миниатюра.

Освен че трябва да имаме план, трябва да можем да определим кои изображения се използват и от кои можем да се отървем без проблеми. За да направим това, от съществено значение е да знаем какво ги създава.

Първото и най-важно нещо е да прегледате всички използвани размери и да разберете къде се генерира всеки от тях. В много случаи те се създават от шаблона от код, който обикновено се намира във файла functions.php и обикновено е приблизително такъв (зависи от всеки шаблон и може дори да не е там или да не съществува, както в случая с 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 ); // Свързани.
add_image_size( 'schema-related2', 422, 300, true ); // Свързани 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 ); // Странична лента в цял ръст.
add_image_size( 'schema-slider', 772, 350, false ); // Слайдер.
add_image_size( 'schema-slider2', 1544, 700, false ); // Слайдер х 2.

Този пример е от functions.php на шаблона Schema, който използвах преди този, който използвам сега.

Тук беше лесно, просто променете true на false (или изтрийте реда), за да избегнете генерирането на размер при качване на нов. Той също така ви казваше за какво се използва. Преди да "ограничите" размера, уверете се, че няма да използвате функцията, за която е генериран.

Това важи само за новите изображения, които качвате, а не за вече качените. Ще поговорим за това как да се отървете от тях по-късно.

Имайте предвид, че някои от вашите приставки и джаджи може да създават копия в други размери за конкретна употреба. Ще трябва да се консултирате с документацията за всяко от тези неща и да следите пътя на изображенията, за да откриете източника и местоназначението им.

Преди да продължа, предполагам, че вече сте успели да разберете откъде идва всяко изображение и че знаете, че можете да минете без това, което сте решили да изтриете.

Миниатюрите, които WordPress създава

Това е мястото, където обикновено се крие хубостта. Все още ги наричат миниатюрни, но въпросът е, че се създават и други много по-дебели размери.

От версия 5.3 насам WordPress генерира седем допълнителни изображения за всяко изображение, което е качено чрез библиотеката с медии и/или от визуалния редактор. Така че всеки път, когато качвате изображение, добавяте осем към общия брой.

Ако добавим и други възможни шаблони, плъгини и джаджи, броят им може да достигне 12 или повече.

Те се създават от WordPress:

Миниатюра (150x150px)
Среден размер (300x300px)
Голям размер (1024x1024px)

Средно голям 768px
2x Средно голям 1536px
2x голям 2048px
Мащабен 2560px

От първите три можем да се лишим от 300 и 1024 и да намалим миниатюрата от 150х150 на 100х100. За да направите това, просто отидете в Настройки/Медия и променете размерите и задайте 0 (нула) на тези, които не искате да генерирате.

Сега, в моя случай, миниатюрата с размери 100x100 ще бъде тази, която се показва в медийната библиотека. Вече сме спестили няколкостотин, а може би и хиляди изображения, както и част от Kb или Mb, като сме намалили броя и размера им.

За останалите четири можем да "отпишем" създаването на всяка от тях поотделно, като добавим тези фрагменти във functions.php на нашия шаблон или чрез плъгина Code Snippets.

Деактивиране на широк 768px, пропорционален

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');

Деактивиране на широк 1536px, пропорционален

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');

Деактивиране на 2048px широк, пропорционален

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');

Деактивиране на мащабирано изображение (2560px)

add_filter('big_image_size_threshold', '__return_false');

Ако предпочитате да използвате един-единствен код за всички генерирани размери, които искате да деактивирате, включително и тези с други възможни размери, можете да изтеглите този код и да премахнете редовете, които искате да запазите или контролирате, от медийните настройки на WordPress, както в случая с първите три.

Деактивиране на всички размери

// Деактивиране на генерираните размери на изображенията
функция shapeSpace_disable_image_sizes($sizes) {
	
	unset($sizes['thumbnail']); // деактивиране на размера на миниатюрата
	unset($sizes['medium']); // деактивирайте средния размер
	unset($sizes['large']); // деактивирайте големия размер
	unset($sizes['medium_large']); // деактивиране на средно големия размер
	unset($sizes['1536x1536']); // деактивирайте 2 пъти средно голям размер
	unset($sizes['2048x2048']); // деактивирайте 2 пъти голям размер
	
	върнете $sizes;
	
}
add_action('intermediate_image_sizes_advanced', 'shapeSpace_disable_image_sizes');

// Деактивиране на мащабирания размер на изображението
add_filter('big_image_size_threshold', '__return_false');

// Деактивиране на други размери на изображенията
функция shapeSpace_disable_other_image_sizes() {
	
	remove_image_size('post-thumbnail'); // Деактивирайте изображенията, добавени с set_post_thumbnail_size ()
	remove_image_size('another-size'); // Деактивирайте всеки друг размер на добавеното изображение
	
}
add_action('init', 'shapeSpace_disable_other_image_sizes');

Източник: блогът на Jeff Starr. Как да деактивираме автоматично генерираните изображения в WordPress - пълно ръководство. Съветвам ви да копирате кода от този пост, силно препоръчително, в случай че нещо е вмъкнато тук погрешно.

Джеф Стар е създател на няколко плъгина и един от тях прави точно това (не съм го пробвал), в случай че предпочитате да не усложнявате живота си.

За зареждане на останалите изображения

Предполага се, че вече сме забранили създаването на всички онези допълнителни размери, които не е необходимо да се създават при зареждане на изображение.

Сега качваме тестово изображение и проверяваме дали не се генерират допълнителни размери. В моя случай това изглежда така:

Как да деактивирате различните размери на изображенията, създавани автоматично от WordPress 1

Но как да изтрием всички тези качени изображения, които вече са останали неизползвани?

Има поне два не много сложни варианта.

На ръка. Малко по-трудоемко и отнема повече време. Можете да ги потърсите във файловия мениджър на Cpanel или във вашия FTP клиент по уникалните низове на имената на файловете, като например 300x300, 768x, 1536x и т.н., и да ги изтриете.

Ако имате много изображения, можете да използвате плъгина Regenerate Thumbnails, който все още върши тази работа добре.

Този плъгин, класически плъгин на Алекс Милс, прави следното: регенерира миниатюрите на качените изображения. Можете да го направите една по една от мултимедийната библиотека или наведнъж, ако не са твърде много.

След като го инсталирате и активирате, когато го отворите от "Инструменти/Регенериране на миниатюри", ще видите това:

Там ще видите списък с почти всички размери, използвани от WordPress, но тъй като вече сме "отписали" създаването на повечето от тях, е препоръчително да опитате с едно тестово изображение, като отбележите и опцията"Изтриване на миниатюри със стари размери без регистрация...".

Как да деактивирате различните размери на изображенията, създавани автоматично от WordPress 2

Ако всичко е минало добре при теста с едно изображение, сега можете масово да регенерирате миниатюрите за всички прикачени файлове XXXX (първи бутон). Това ще премахне всички излишни размери наведнъж.

Направих го наскоро и си спомням, че масовото регенериране се провали, предполагам, защото имаше толкова много изображения (повече от 20K) и процесът беше прекъснат в някои моменти, така че реших да го направя на блокове от 200 изображения от медийната библиотека.

След като приключите със задачата, можете да деинсталирате плъгина.

Добра идея е, след като вече имате достатъчно място, да създадете безплатно оптимизирани копия на вашите .jpg файлове във формат .webp с помощта на плъгина Litespeed Cache, ако хостингът ви работи под Litespeed.

Suscríbete para recibir los post en tu email sin publicidad

Свързани статии

Este blog se aloja en LucusHost

LucusHost, el mejor hosting