Я на самом деле уже понял это, просто хочу оставить свое решение здесь на случай, если другие люди могут найти его полезным:
Wordpress автоматически экранирует все переменные запроса. Если магические кавычки отключены, они сначала удаляют косые черты, а затем добавляют их снова.
кусок кода wp-settings.php:
// 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);
Источник: http://www.wptextads.com/blog/2007/05/19/gpc-magic-quotes-in-wordpress-is-compulsory/