Уменьшение эскизов без создания новых изображений

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

update_option( 'thumbnail_size_w', 320 ); update_option( 'thumbnail_size_h', 180 ); 

В то время как эскизы теперь имеют правильный размер, иногда они выглядят не очень красиво, поскольку они просто обрезаются посередине.

Таким образом, я хотел бы иметь возможность создавать пользовательские культуры, когда это произойдет. Для этого я перейду в Media> Library> Нажмите «Изменить» под изображением> Изменить изображение

Там у меня есть панель, которая позволяет мне обрезать изображение, как я хочу, нажав кнопку «Применить изменения к эскизу».

Однако есть несколько вопросов …

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

Это код, который я использую для отображения изображения:

 the_post_thumbnail('thumbnail', ['class' => 'featured-post-image']); 

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

Поэтому я хотел бы знать, можно ли это сделать, и если это не слишком сложно сделать с помощью кодирования, я бы предпочел сделать это, чем добавлять плагины.

Ответ заключается в том, чтобы не генерировать больше размеров изображения (и ваша тема, переопределяющая пользовательские настройки, большая, нет,), но для выбора наилучшего размера изображения bt и применения CSS-растяжения и обрезки путем упаковки элемента img с помощью span .

В img вы используете то, что наилучшим образом подходит, а затем, используя комбинацию относительного позиционирования в span и изменяя размер изображения, вы можете получить любой желаемый эффект.

Это действительно просто «вид порта», который так же стара, как CSS, единственная часть, предназначенная для WordPress, – это передать размеры, которые вы хотите, чтобы the_post_thumbnail в качестве первого параметра.

Исход из этого заключается в том, что, очевидно, если wordpress дает вам обрезанное изображение, вы не можете его «открутить», и вам придется добавить свой собственный размер изображения для этого.