我刚刚将博客升级到WordPress 2.8.6并发现他们的报价与2.8.5不同
我有一个主题选项面板,允许用户将他们的img标签输入到文本区域。
但是,当保存选项时,WP会将转义斜杠添加到它在文本区域中找到的双引号。
示例:
<img src="somefile.jpg" />
变为
<img src=\"somefile.jpg\" />
这会导致图像无法加载
此外,在我的主题选项的每次保存中,反斜杠的数量增加了一倍!!!
function mytheme_add_admin() {
global $themename, $shortname, $options;
if ( $_GET['page'] == basename(__FILE__) ) {
if ( 'save' == $_REQUEST['action'] ) {
foreach ($options as $value) {
update_option( $value['id'], $_REQUEST[ $value['id'] ] );
}
foreach ($options as $value) {
if( isset( $_REQUEST[ $value['id'] ] ) ) {
update_option( $value['id'], $_REQUEST[ $value['id'] ] );
} else {
delete_option( $value['id'] );
}
}
header("Location: themes.php?page=functions.php&saved=true");
die;
} else if( 'reset' == $_REQUEST['action'] ) {
foreach ($options as $value) {
delete_option( $value['id'] );
}
header("Location: themes.php?page=functions.php&reset=true");
die;
}
答案 0 :(得分:5)
WordPress始终执行magic_quotes_gpc
以获得向后兼容的原因。在处理GPC数据时,您必须对数据运行stripslashes()
以获得原始格式。