我创建了自定义帖子类型。 在此自定义帖子类型中,我具有metabox。 此metabox中的某些内容依赖于另一种自定义帖子类型的帖子。
对于创建metabox,没问题,以下代码有效:
$vehicules = get_posts(array('post_type'=>'vehicules','post_status'=>'publish'));
foreach ($vehicules as $key_car => $value_car) {
$title = $value_car->post_title;
$id_car = $value_car->ID;
add_meta_box(
'car_'.$id_car, //slug of metabox
__('Price for ','fyc').$title, //label of metabox
'wpt_shuttles_car_'.$id_car, //callback function
'shuttles', //cpt
'normal', //place in page
'default'
);
}
在metabox中创建的代码如下:
$args = array('post_type'=>'vehicules','post_status'=>'publish');
$mydatas = get_posts($args);
foreach ($mydatas as $key_car => $value_car) {
$id_car = $value_car->ID;
$field_car = 'car_'.$id_car;
$function_car = 'wpt_shuttles_car_'.$id_car;
$field_name = 'shuttles_'.$field_car;
$post_meta_name = 'shuttles_cities_'.$field_car;
$function_car = function() {
global $post;
wp_nonce_field( basename( __FILE__ ), 'nonce_'.$field_car );
$post_meta_name = get_post_meta( $post->ID, $field_name, true );
echo '<input type="text" name="'.$field_name.'" value="'.$post_meta_name.'" class="widefat" required>';
};
}
但是我的代码的这一部分提供了以下信息:
警告:call_user_func()期望参数1为有效的回调,函数'$ wpt_shuttles_car_31'找不到或/home/mywebsiteaddress.com/wordpress/wp-admin/includes/template.php中第1215行的函数名称无效
我认为问题出在函数的名称上,但是,我该如何命名呢? 我已经尝试过了:
$$function_car = function(){
...
}
双倍$$,但效果不佳。