He estado escribiendo algunos complementos de Wordpress, y he tenido algún problema con Wordpress poniendo comillas mágicas en los datos POST y GET.
Específicamente, la función "wp_magic_quotes" en \ wp-includes \ load.php, que se llama (probablemente en cada respuesta) en wp-settings.php. Esta función agrega citas mágicas a los datos, incluso si desactivo las citas mágicas en la configuración de PHP.
/**
* Add magic quotes to $_GET, $_POST, $_COOKIE, and $_SERVER.
*
* Also forces $_REQUEST to be $_GET + $_POST. If $_SERVER, $_COOKIE,
* or $_ENV are needed, use those superglobals directly.
*
* @access private
* @since 3.0.0
*/
function wp_magic_quotes() {
// If already slashed, strip.
if ( get_magic_quotes_gpc() ) {
$_GET = stripslashes_deep( $_GET );
$_POST = stripslashes_deep( $_POST );
$_COOKIE = stripslashes_deep( $_COOKIE );
}
// Escape with wpdb.
$_GET = add_magic_quotes( $_GET );
$_POST = add_magic_quotes( $_POST );
$_COOKIE = add_magic_quotes( $_COOKIE );
$_SERVER = add_magic_quotes( $_SERVER );
// Force REQUEST to be GET + POST.
$_REQUEST = array_merge( $_GET, $_POST );
}
¿Es seguro para mí simplemente comentar la llamada wp_magic_quotes () en wp-settings.php? Es decir, ¿afectará negativamente al código normal de Wordpress y / o abrirá algún vector de explotación? Si es así, ¿hay alguna otra forma de hacerlo además de modificar el código WP (para que no tenga que lidiar con esto cada vez que haya una actualización)?