您好,我有一个设置屏幕,允许用户使用wp\\U editor()从帖子和页面中创建HTML电子邮件,使用他们已经习惯的编辑器;
一切似乎都很好,除了当我尝试用引号中的文本保存时,当值返回时,它有转义,我知道这是因为wp\\u kses\\u post();清理数据,但如果用户想要创建一封包含引号的HTML电子邮件,该怎么办?
我知道我可以做str\\u替换,但还有其他方法吗?我是否应该使用wp\\u kses\\u post();如果我计划允许报价?
wp_editor code:
wp_nonce_field(\'tld_wcdpue_settings_nonce_action\', \'tld_wcdpue_settings_nonce_field\');
$tld_wcdpue_settings_email_content = get_option(\'tld_wcdpue_settings_email_content\');
wp_editor( $tld_wcdpue_settings_email_content, \'tld_wcdpue_settings_wpeditor\', array( \'wpautop\' => false ) );
wp_editor saving code:
if( isset(//does authentication here) ){
update_option( \'tld_wcdpue_settings_email_content\', wp_kses_post( $_POST[\'tld_wcdpue_settings_wpeditor\'] ) );
}
当它保存到DB时,它会被转义,因此返回:
我知道我可以简单地做一个str\\u替换,但这不是违背了wp\\u kses\\u post的目的吗?我应该在这种情况下使用它吗?我还意识到,当从db中提取数据时,我并没有逃逸,因为我想在编辑器中呈现HTML,所以不确定应该如何逃逸