Comments: Use proper HTTP response codes for validation errors.
props miqrogroove, solarissmoke, mackensen. fixes #11286. Built from https://develop.svn.wordpress.org/trunk@30579 git-svn-id: http://core.svn.wordpress.org/trunk@30569 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
184d327ff4
commit
7e0c893415
|
@ -47,7 +47,7 @@ if ( ! comments_open( $comment_post_ID ) ) {
|
||||||
* @param int $comment_post_ID Post ID.
|
* @param int $comment_post_ID Post ID.
|
||||||
*/
|
*/
|
||||||
do_action( 'comment_closed', $comment_post_ID );
|
do_action( 'comment_closed', $comment_post_ID );
|
||||||
wp_die( __('Sorry, comments are closed for this item.') );
|
wp_die( __( 'Sorry, comments are closed for this item.' ), 403 );
|
||||||
} elseif ( 'trash' == $status ) {
|
} elseif ( 'trash' == $status ) {
|
||||||
/**
|
/**
|
||||||
* Fires when a comment is attempted on a trashed post.
|
* Fires when a comment is attempted on a trashed post.
|
||||||
|
@ -111,21 +111,24 @@ if ( $user->exists() ) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if ( get_option('comment_registration') || 'private' == $status )
|
if ( get_option( 'comment_registration' ) || 'private' == $status ) {
|
||||||
wp_die( __('Sorry, you must be logged in to post a comment.') );
|
wp_die( __( 'Sorry, you must be logged in to post a comment.' ), 403 );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$comment_type = '';
|
$comment_type = '';
|
||||||
|
|
||||||
if ( get_option('require_name_email') && !$user->exists() ) {
|
if ( get_option('require_name_email') && !$user->exists() ) {
|
||||||
if ( 6 > strlen($comment_author_email) || '' == $comment_author )
|
if ( 6 > strlen( $comment_author_email ) || '' == $comment_author ) {
|
||||||
wp_die( __('<strong>ERROR</strong>: please fill the required fields (name, email).') );
|
wp_die( __( '<strong>ERROR</strong>: please fill the required fields (name, email).' ), 200 );
|
||||||
elseif ( !is_email($comment_author_email))
|
} else if ( ! is_email( $comment_author_email ) ) {
|
||||||
wp_die( __('<strong>ERROR</strong>: please enter a valid email address.') );
|
wp_die( __( '<strong>ERROR</strong>: please enter a valid email address.' ), 200 );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( '' == $comment_content )
|
if ( '' == $comment_content ) {
|
||||||
wp_die( __('<strong>ERROR</strong>: please type a comment.') );
|
wp_die( __( '<strong>ERROR</strong>: please type a comment.' ), 200 );
|
||||||
|
}
|
||||||
|
|
||||||
$comment_parent = isset($_POST['comment_parent']) ? absint($_POST['comment_parent']) : 0;
|
$comment_parent = isset($_POST['comment_parent']) ? absint($_POST['comment_parent']) : 0;
|
||||||
|
|
||||||
|
|
|
@ -1131,7 +1131,7 @@ function wp_allow_comment( $commentdata ) {
|
||||||
if ( defined( 'DOING_AJAX' ) ) {
|
if ( defined( 'DOING_AJAX' ) ) {
|
||||||
die( __('Duplicate comment detected; it looks as though you’ve already said that!') );
|
die( __('Duplicate comment detected; it looks as though you’ve already said that!') );
|
||||||
}
|
}
|
||||||
wp_die( __('Duplicate comment detected; it looks as though you’ve already said that!') );
|
wp_die( __( 'Duplicate comment detected; it looks as though you’ve already said that!' ), 409 );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1249,7 +1249,7 @@ function check_comment_flood_db( $ip, $email, $date ) {
|
||||||
if ( defined('DOING_AJAX') )
|
if ( defined('DOING_AJAX') )
|
||||||
die( __('You are posting comments too quickly. Slow down.') );
|
die( __('You are posting comments too quickly. Slow down.') );
|
||||||
|
|
||||||
wp_die( __('You are posting comments too quickly. Slow down.'), '', array('response' => 403) );
|
wp_die( __( 'You are posting comments too quickly. Slow down.' ), 429 );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
*
|
*
|
||||||
* @global string $wp_version
|
* @global string $wp_version
|
||||||
*/
|
*/
|
||||||
$wp_version = '4.1-beta2-30578';
|
$wp_version = '4.1-beta2-30579';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||||
|
|
Loading…
Reference in New Issue