Intereting Posts
Удалите ссылку «Вставить из URL» в «Загрузка мультимедиа» – WP 3.5 Фильтрация комментариев по запросу при условии выполнения условия добавить новый размер для загруженного изображения Показать две случайные записи из пользовательского типа сообщения Как отправлять сообщения из базы данных, заданной плагином Ошибка get_item_quantity () при извлечении фида PHP-код внутри коротких кодов Можно ли получить короткий код, сгенерированный плагином, а затем, используя функцию, создать новый пост с помощью этого короткого кода? Скрыть десятичные данные на странице hompage, category и product Исходный тип почты и тип базовой ошибки save_post требуется как минимум один загруженный файл для публикации Страница прикрепления для каждой категории Как я могу зарегистрировать пользователя из WordPress до загрузки страницы? используя wp_rewrite, но сохраните исходный url в адресной строке Перемещение сайта wordpress на подстраницу другого сайта

Почему the_post_thumbnail выводит полноразмерные изображения после активации поддержки после эскизов?

Я имею в виду:

add_action( 'after_setup_theme', 'thumbs_setup' ); function thumbs_setup() { add_theme_support( 'post-thumbnails' ); } 

Мои настройки мультимедиа – 150×150 пикселей на миниатюрах, но теперь the_post_thumbnail() будет выводить полноразмерное изображение. Зачем?

Я вижу, что единственный способ заставить the_post_thumbnail() действительно выводить размер эскиза – это явно передать его:

the_post_thumbnail('thumbnail')

Зачем?

Solutions Collecting From Web of "Почему the_post_thumbnail выводит полноразмерные изображения после активации поддержки после эскизов?"

the_post_thumbnail , к сожалению, назван, потому что он предлагает небольшое изображение, но на самом деле относится к изображенному изображению сообщения. Добавление поддержки для него просто делает поле «Featured image» доступным в вашем редакторе сообщений.

Теперь, если вы посмотрите на исходный код , вы увидите, что если при вызове the_post_thumbnail не задан the_post_thumbnail , размер определяется как post-thumbnail . Однако это не имя миниатюры по умолчанию, сгенерированного для каждого изображения, это thumbnail . Размер изображения, называемый «пост-эскиз», по умолчанию не указан. В результате WP будет использовать полное изображение.

Существует несколько способов обойти это, но самым легким будет использование фильтра, доступного в get_the_post_thumbnail , функции, которая используется the_post_thumbnail . Вы можете перенаправить вызов по умолчанию из «post-thumbnail» в «tumbnail» следующим образом:

 add_filter ('post_thumbnail_size','wpse275569_post_thumbnail_size'); function wpse275569_post_thumbnail_size ($size) { if ($size == 'post-thumbnail') $size = 'thumbnail'; return $size; } 

Я думаю, что добавление поддержки «эскизов» также добавляет новый тип размера: «пост-эскиз». Но «пост-эскиз» не является «большим пальцем» или «миниатюрным», это новый, другой тип. Кроме того, the_post_thumbnail() если the_post_thumbnail() без параметров, выведет размер «пост-миниатюры» вместо размера «большой».

«thumb» (или «thumbnail») устанавливаются с помощью панели управления admin, а «post-thumbnail» – нет.

Поскольку размер «после эскиза» еще не установлен, то the_post_thumbnail() не знает, какой размер использовать, и, таким образом, он выведет полное изображение.

Чтобы установить размер «пост-эскиза», вы должны использовать стандартное значение « add-image-size() передающее« пост-эскиз »в качестве имени, или просто используйте set_post_thumbnail_size() .