功能get_post_thumbnail_id()
如果在wordpress循环之外使用,则需要传递一个值。你忘了通过它。
您使用的代码将在每次更新时创建一个新的自定义字段,因此下面是将执行的修改后的代码update_post_meta
如果该meta\\u键已存在于数据库中,则函数。
波纹管代码在上进行测试WordPress 3.4.1 具有Twenty Ten 已安装主题
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);
}
}