我有一个在帖子中自动创建自定义字段的功能。我把它放在我的functions.php。
中 Image
是自定义字段的名称,HERE
是值。如何将函数w_thumbnail_src
作为变量?
add_action('wp_insert_post', 'mk_set_default_custom_fields');
function mk_set_default_custom_fields($post_id)
{
if ( $_GET['post_type'] != 'post' ) {
add_post_meta($post_id, 'Image','HERE', true);
}
return true;
}
让我补充说w_thumbnail_src
是一个看起来像这个
function w_thumbnail_src() {
if (has_post_thumbnail()) {
$thumb = wp_get_attachment_image_src(get_post_thumbnail_id(), 'emphasis');
echo $thumb[0]; // thumbnail url
}
}
答案 0 :(得分:1)
我认为你需要改变:
add_post_meta($post_id, 'Image','HERE', true);
于:
add_post_meta($post_id, 'Image', w_thumbnail_src(), true);
并修复w_thumbnail_src()函数,方法是将其更改为:
function w_thumbnail_src() {
if (has_post_thumbnail()) {
$thumb = wp_get_attachment_image_src(get_post_thumbnail_id(), 'emphasis');
return $thumb[0]; // thumbnail url
} else {
return ''; // or a default thumbnail url
}
}
答案 1 :(得分:0)
以下是将缩略图网址添加到名为Image。
的自定义字段的最终代码function w_thumbnail_src() {
if (has_post_thumbnail()) {
$thumb = wp_get_attachment_image_src(get_post_thumbnail_id(), 'emphasis');
return $thumb[0]; // thumbnail url
} else {
return ''; // or a default thumbnail url
}
}
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);
}
}