Часто в слайдерах, плагинах, да и просто для дальнейшей работы с миниатюрой поста используются произвольные поля, и иногда бывает нужно определить миниатюру поста, и ссылку на нее добавить в произвольное поле – с прямой ссылкой легче работать, чем с функциями, которые ее выводят. Я уже писал, как автоматически сделать первое изображение, присоединенное к посту, его миниатюрой – это удобно, когда нужно создать миниатюры сразу нескольких постов, для которых ранее они не создавались. давайте дополним эту функцию и автоматической вставкой ссылки на миниатюру поста в заранее определенное произвольное поле.
Для этого в файл functions.php вставьте код:
//определяем урл миниатюры, а если его нет, вместо него используем урл дефолтного изображения function w_thumbnail_src() { if (has_post_thumbnail()) { $thumb = wp_get_attachment_image_src(get_post_thumbnail_id(), 'thumbnail'); return $thumb[0]; // урл миниатюры } else { return ''; // или урл дефолтной картинки, если миниатюры нет } } //автоматически вставляем урл миниатюры поста в произвольное поле Image add_action('publish_page', 'add_custom_field_automatically', 'w_thumbnail_src'); add_action('publish_post', 'add_custom_field_automatically'); function add_custom_field_automatically($post_id) { global $wpdb; if(!wp_is_post_revision($post_id)) { add_post_meta($post_id, 'Image', w_thumbnail_src(), true); } }
Эти две функции автоматически добавляют в произвольное поле Image ссылку на изображение, являющееся миниатюрой поста, причем можно указать, в каком виде выводить это изображение: в виде миниатюры маленького, среднего, большого размера или в полную величину (thumbnail, medium, large и full соответственно, в коде используется thumbnail).
а как сделать чтобы в дополнительное поле не просто картинка ставилась , а прямо html код типа
???
нужно чтобы с Img src было сразу в поле !!
Нужно заменить
на
Чего то не работает,а очень хочется..Есть какие нибудь соображения?
Не работает, версия wordpress 3.5.1. А какая версия у вас?