Как удалить все экземпляры эскизов, отображаемых в моей теме?

в основном, я хотел бы, чтобы все значки были заменены пустой строкой или чем-то подобным. Некоторая часть кода, которую я могу добавить в плагин или functions.php

Solutions Collecting From Web of "Как удалить все экземпляры эскизов, отображаемых в моей теме?"

Выполнение такой операции путем замены URL-адреса не рекомендуется по ряду причин. Например, если вы сделаете это, ваши эскизы не будут удалены после удаления исходного изображения, так как вы нарушили ссылку в базе данных.

Другая причина заключается в том, что если вы попытаетесь получить доступ к уменьшенному миниатюре размера по умолчанию, он перенаправит на простую загрузку страницы. Например:

http://example.com/uploads/test.jpg

будет выглядеть так:

http://example.com/

Это означает полный запрос на главную страницу, загрузку каждого актива, запрос дополнительных ссылок и продолжение.

Правильный подход заключается в том, чтобы отключить размеры по умолчанию. Вы можете подключить фильтр middle_image_sizes_advanced и сделать это:

 function unset_default_thumbnails( $sizes) { unset( $sizes['thumbnail']); unset( $sizes['medium']); unset( $sizes['medium-large']); unset( $sizes['large']); return $sizes; } add_filter('intermediate_image_sizes_advanced', 'unset_default_thumbnails'); 

Готово. Теперь после загрузки изображения не будет генерируемых эскизов. Ваши собственные размеры эскизов все равно будут сгенерированы.

Чтобы удалить текущие миниатюры, вы можете использовать популярный плагин Thumbnail Cleaner .

ОБНОВИТЬ

Основываясь на ваших комментариях, я добавил способ заменить URL-адреса, сгенерированные the_post_thumbnail() пустой строкой. Это не рекомендуется.

 add_filter( 'post_thumbnail_html', 'disable_post_thumbnails' ,10 , 5 ); function disable_post_thumbnails( $html, $post->ID, $post_thumbnail_id, $size, $attr ){ // Check if the image is true if ( $html ) { switch ( $size ) { case 'post-thumbnail': case 'thumbnail': case 'medium': case 'medium-large': case 'large': // Let's replace the thumbnail's URL with the // website's URL for only the default sizes $html = str_replace( $html , '<img src="'.site_url().'"/>' , $html ); break; default: break; } } // Return the URL return $html; } 

Обратите внимание, что после объявления функции вы не можете просто удалить ее. Что вы можете сделать, так это отфильтровать его вход / выход, если он это поддерживает.

PS: это может нарушить поведение плагина / темы. Это только для образовательных целей, не пытайтесь это делать дома.