html标签在存储到数据库,wordpress自定义帖子类型,编辑器时被剥离

时间:2015-12-28 14:44:25

标签: php wordpress

    if ( ! isset( $_POST['myplugin_new_field'] ) ) {
        return;
    }
    if ( ! isset( $_POST['myplugin_new_field2'] ) ) {
        return;
    }
    if ( ! isset( $_POST['myplugin_new_field3'] ) ) {
        return;
    }

    // Sanitize user input.
    $my_data =   sanitize_text_field($_POST['myplugin_new_field']);
    $my_data2 =  sanitize_text_field($_POST['myplugin_new_field2']);
    $my_data3 =  sanitize_text_field($_POST['myplugin_new_field3']);

    // Update the meta field in the database.
    update_post_meta( $post_id, '_my_meta_value_key', $my_data );
    update_post_meta( $post_id, '_my_meta_value_key2', $my_data2 );
    update_post_meta( $post_id, '_my_meta_value_key3', $my_data3 );
}
add_action( 'save_post', 'myplugin_save_meta_box_data' );

我使用默认编辑器,所有html标签在存储时都被剥离。

1 个答案:

答案 0 :(得分:0)

这是因为sanitize_text_field()根据Wordpress函数参考删除了所有标记。

  

检查无效的UTF-8,转换单个<字符到实体,剥离所有标签,删除换行符,标签和额外的空格,剥离八位字节。