Wordpress自定义后元元值不保存

时间:2014-07-24 11:55:49

标签: php wordpress-plugin wordpress

我正在创建一个支持自定义帖子类型的wp插件。因为我已经创建了一个自定义元框..当我输入元数据值时,它将不会保存到管理仪表板以及数据库中。任何人都可以帮助我。 感谢..

//enter code here 
function astestimonial_meta_box($post_id)
 {
  wp_nonce_field('astest_meta_box','astest_meta_box_nonce');
  $clientname = get_post_meta($post->ID,'_clientname_value','true');
echo'<label for="client_name_val">';
_e('Name: ', 'astestimonial_textdomain');
echo'</label>';
echo'<input type="text" id="client_name_val" name="client_name_val" value="'.esc_attr($clientname).'" />';

}
//Save meta data code
function astest_save_client_info($post_id)
{
if(!isset($_POST['astest_meta_box_nonce']))
{
    return;
}

if(!wp_verify_nonce($POST['astest_meta_box_nonce'],'astest_meta_box'))
{
    return;
}

if(defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
{
    return;
}

if ( isset( $_POST['post_type'] ) && 'page' == $_POST['post_type'] )
{
    if ( ! current_user_can( 'edit_post', $post_id ) ) 
    {
        return;
    }

}
else
{
    if ( ! current_user_can( 'edit_page', $post_id ) ) 
    {
        return;
    }
}

if(  !isset( $_POST['client_name_val']) && !isset($_POST['client_email_val']) && !isset($_POST['client_comp_val']) && !isset($_POST['client_desig_val']))
{
    return;
}
$cli_name_data = sanitize_text_field( $_POST['client_name_val'] );
update_post_meta($post_id, '_clientname_value', $cli_name_data);

}
add_action( 'save_post', 'astest_save_client_info' );

0 个答案:

没有答案