Есть ли способ позволить моим пользователям определять область обрезки миниатюры сообщения? Миниатюры всегда являются существующими вложенными файлами, я бы не стал создавать дополнительные вложения для каждого миниатюры.
Миниатюры постов должны быть размером 200x100 пикселей и взяты из одного из изображений, использованных в посте. Таким образом, в моем идеальном мире, когда вы нажимаете ссылку «Установить рекомендуемое изображение», вы получаете обзор уже включенных изображений, а когда вы нажимаете одно из них, вы можете самостоятельно определить область обрезки (перемещая или изменяя ее размер, но сохраняя соотношение сторон 2х1). Когда вы нажимаете «ОК», миниатюра нового сообщения сохраняется с исходным вложением (например, в _wp_attachment_metadata['sizes']['post-thumbnail']
поле метаданных), а не как новое вложение. Использование изображения, которое уже используется в качестве миниатюры поста для другого поста, не должно быть разрешено или, по крайней мере, дает предупреждение.
Я считаю, что включенный редактор изображений не подойдет мне, так как вы можете редактировать все версии изображения или обычный эскиз, а не только миниатюру сообщения. Мне также немного странно знать, какие версии я редактирую, поэтому я думаю, что у моих пользователей возникнут еще большие проблемы.
Есть ли плагин, который делает то, что я хочу, или который я могу легко расширить для своих нужд?
Обновление: пример пользовательского интерфейса
Мне очень нравится интерфейс средства выбора изображений в адресной книге Mac OS X: вы выбираете изображение и изменяете размер миниатюры миниатюр с фиксированным соотношением с помощью ползунка. Вы также можете перетащить базовое изображение вокруг. Вы можете расширить эту идею до нескольких размеров изображения (у меня есть, post-thumbnail
и post-thumbnail-1/2
это половина этого размера, например). Позвольте пользователю выбрать размеры, которые он сейчас редактирует, с помощью флажков и нарисуйте соответствующие прямоугольники обрезки на экране.
Ответы:
Код все еще беспорядок, но, похоже, он работает даже в IE 8. Я планирую выпустить его в репозитории, но пока вы можете поиграть с моей текущей версией . Для доступа к нему вы нажимаете «Редактировать изображение» при добавлении или редактировании изображения, оно заменяет обычный редактор изображений (их очень сложно объединить). Так как большая часть административной области использует обычные миниатюры, а моя текущая версия редактирует миниатюру сообщений, может показаться, что код не имеет никакого эффекта, но попробуйте его, показав эскиз сообщения, и вы увидите, что он изменится.
Этот плагин требует моего Resizer Image Resizer , который также все еще беспорядок, для фактического изменения размера.
источник
Лучше всего использовать обрезку изображения на основе JavaScript, а затем php в сочетании с ImageMagick или Image GD.
Это должно было бы быть записано в ваши функции или как плагин, поскольку я не знаю, из рук вон каких-либо готовых плагинов WordPress, что удивительно.
Существует обрезка изображения YUI с возможностью сохранения на основе php http://developer.yahoo.com/yui/examples/imagecropper/conn_crop.html
Вот другой учебник о том, как использовать jquery cropper с php
http://www.webmotionuk.co.uk/php-jquery-image-upload-and-crop/
Третий вариант очень похож на приведенную выше ссылку, использующую тот же jquery cropper, но другой код. http://www.leonkessler.com/blog/?p=132
Вот еще один пример использования jcrop jquery: http://www.talkincode.com/jcrop-extension-implementation-in-php-932.html.
Кто хочет новый плагин, это наверняка будет популярно :)
источник
Предполагая, что вы уже добавили поддержку пост-миниатюр, так как вы говорите об опции «Featured Image».
Если это так, у вас есть возможность добавить новый размер изображения в массив загрузки. Так что по умолчанию у вас есть миниатюра, средняя, большая. В следующем фрагменте кода это добавляет 4-е изображение к этому ассортименту в зависимости от желаемого размера. Этот бит кода будет добавлен в ваш файл functions.php.
"new-thumb" = имя нового пользовательского изображения
"200" = ширина
"100" = высота
"true" = опция жесткого кадрирования. Это заставит изображение обрезаться до определенной ширины / высоты. Без этого он просто масштабируется до пропорции.
Теперь, чтобы отобразить новую миниатюру на странице или в массиве записей, вы должны вставить следующее в ваш HTML
источник
Возможно, вы захотите использовать CSS, чтобы иметь большую гибкость, исправить миниатюры в своей теме (если хотите) и избежать беспорядка в файлах:
http://www.seifi.org/css/creating-thumbnails-using-the-css-clip-property.html
Помните, что будет загружено все изображение, поэтому не используйте для этого оригиналы объемом 3 МБ.
Обновление в соответствии с запросом января: если вы хотите динамическое вырезание, подумайте:
источник
Есть старый плагин под названием WP Post Thumbnail, который мы иногда используем. Она не идеальна, и есть некоторые незначительные ошибки в последней версии WP (она не обновлялась с 2008 года, поэтому она не обязательно надежна). http://wordpress.org/extend/plugins/wp-post-thumbnail/
источник
Я полагаю, что вы ищете это: http://wordpress.org/support/topic/scissors-for-wordpress-29-also-works-on-30-hurray
Я не пробовал это, но он должен предложить вам функциональность, которую вы ищете.
Оригинальная страница плагина здесь. http://wordpress.org/extend/plugins/scissors/
Мне это нужно для проекта, над которым я тоже работаю.
источник
Я думаю, что окончательное решение этой проблемы было бы изменить плагин с http://www.seoadsensethemes.com/wordpress-wp-post-thumbnail-plugin/
и настройте его так, чтобы любые пользовательские размеры изображений, определенные в вашем файле functions.php (используя
add_image_size( 'new_thumb', 200, 100, true );
), автоматически использовались, а затем получали код для замены (или расширения) ссылки «редактировать», когда вы хотите изменить изображение.Используя этот подход, WordPress может продолжать создавать соответствующие размеры изображений, как обычно, но если вы хотите специально изменить обрезанную область любого конкретного изображения, у вас есть возможность сделать это, что, в свою очередь, заменит автоматически сгенерированное изображение для этого размера. Хммм ... хотя это звучит сбивающим с толку, читая его снова, это именно то, чего я чувствую, не хватает.
В настоящее время я считаю, что плагин сохраняет эти нестандартные размеры изображений в настраиваемых полях внутри сообщения вместо сообщения для соответствующего изображения.
источник
Я решил обрезать миниатюры, используя "wp_get_attachment_image" ... вот пример галереи изображений с обрезанными миниатюрами
http://wpworks.wordpress.com/2010/12/27/image-gallery-with-image-crop/
С уважением
источник