Intereting Posts
Создайте кликабельное имя в WP_List_Table для Plugin Admin Где на PHP я перемещаю название и мета (дата) в нижней части каждого раздела блога? Плагин WordPress Look & Feel Копирование темы из Localhost to Live не копирует все настройки темы с ней? Запускать posts_where и posts_join только по основному запросу Как передать внешние переменные в фильтры / действия Сохраните sql-файл после вставки wpdb Исключить первые 5 должностей определенных категорий в основном цикле как установить bootstrap на двадцать четыре темы Перенаправить пользователей после неудачной попытки входа в систему? Admin ToolBar не отображается в верхней части сайта Могу ли я управлять контентом моего пользовательского сайта с помощью WordPress? Загрузите объявление категории Custom_post_type с помощью ajax Как я могу перечислить следующие 7 дней и любые события (cpt), содержащиеся в эти дни Индекс в корне, wordpress в подкаталоге

Получение URL-адреса Featured и его добавление в качестве настраиваемого поля для публикации обновления / публикации

Я пробовал ряд решений, размещенных здесь, касательно преобразования настраиваемых полей в изображения с изображениями – конечно, в обратном порядке; но не работает для меня.

То, что я пытаюсь сделать, это захватить URL-адрес Featured Image после загрузки изображения и установки его в качестве отображаемого изображения; затем автоматически установите URL-адрес полного размера в качестве настраиваемого поля. Это должно работать как на пост-обновление для существующих статей, которые в настоящее время не имеют настраиваемого поля, и для публикации post для новых статей.

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

add_action('publish_page', 'add_custom_field_automatically'); add_action('publish_post', 'add_custom_field_automatically'); function add_custom_field_automatically($post_ID) { global $wpdb; $post_thumbnail_id = get_post_thumbnail_id(); $post_thumbnail_url = wp_get_attachment_url($post_thumbnail_id); add_post_meta($post_ID, 'lead_image', $post_thumbnail_url, false); } 

Solutions Collecting From Web of "Получение URL-адреса Featured и его добавление в качестве настраиваемого поля для публикации обновления / публикации"

Функция get_post_thumbnail_id() требует значения, которое должно быть передано при использовании вне цикла wordpress. Вы забыли передать его.

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

Следующий код протестирован на WordPress 3.4.1 с установленной темой 20 десяти

 add_action('publish_page', 'add_custom_field_automatically'); add_action('publish_post', 'add_custom_field_automatically'); function add_custom_field_automatically($post_ID) { global $wpdb; $post_thumbnail_id = get_post_thumbnail_id( $post_ID ); $post_thumbnail_url = wp_get_attachment_url($post_thumbnail_id); //to make sure if we already has set the value $has_image = get_post_meta($post_ID, 'lead_image', true); //will update instead of add if meta_key has value. if ($has_image != '') { add_post_meta($post_ID, 'lead_image', $post_thumbnail_url, true); } else { update_post_meta($post_ID, 'lead_image', $post_thumbnail_url, $has_image); } }