WordPress is still adding slashes to data sent per POST, so yes, in some cases you might have to remove the slashes. There are two options:
stripslashes_deep( $value ). This function accepts an array, an object or a string and removes the slashes.
Get POST data per:
$data = file_get_contents( 'php://input' );
This takes the data from the raw input stream, a resource that cannot be changed (read-only), so it is not changed by WordPress too. This doesn’t work when the form was sent with
enctype="multipart/form-data", eg. with file uploads.
stripslashes_deep() might ruin JSON encoded strings.
Magic quotes are not quotes, they are backslashes
\. They work like
addslashes() and are applied on several places to incoming data. Backslashes are set before
\ and the character
In WordPress there is a function
wp-includes/functions.php). It runs on
wp-includes/load.php in the function
wp_magic_quotes(), and on user/post data pulled from the database.