wp/wp-comments-post.php
changeset 9 177826044cd9
parent 7 cf61fcea0001
child 16 a86126ab1dd4
--- a/wp/wp-comments-post.php	Mon Oct 14 18:06:33 2019 +0200
+++ b/wp/wp-comments-post.php	Mon Oct 14 18:28:13 2019 +0200
@@ -11,14 +11,14 @@
 		$protocol = 'HTTP/1.0';
 	}
 
-	header('Allow: POST');
-	header("$protocol 405 Method Not Allowed");
-	header('Content-Type: text/plain');
+	header( 'Allow: POST' );
+	header( "$protocol 405 Method Not Allowed" );
+	header( 'Content-Type: text/plain' );
 	exit;
 }
 
 /** Sets up the WordPress Environment. */
-require( dirname(__FILE__) . '/wp-load.php' );
+require( dirname( __FILE__ ) . '/wp-load.php' );
 
 nocache_headers();
 
@@ -26,13 +26,20 @@
 if ( is_wp_error( $comment ) ) {
 	$data = intval( $comment->get_error_data() );
 	if ( ! empty( $data ) ) {
-		wp_die( '<p>' . $comment->get_error_message() . '</p>', __( 'Comment Submission Failure' ), array( 'response' => $data, 'back_link' => true ) );
+		wp_die(
+			'<p>' . $comment->get_error_message() . '</p>',
+			__( 'Comment Submission Failure' ),
+			array(
+				'response'  => $data,
+				'back_link' => true,
+			)
+		);
 	} else {
 		exit;
 	}
 }
 
-$user = wp_get_current_user();
+$user            = wp_get_current_user();
 $cookies_consent = ( isset( $_POST['wp-comment-cookies-consent'] ) );
 
 /**
@@ -49,6 +56,17 @@
 
 $location = empty( $_POST['redirect_to'] ) ? get_comment_link( $comment ) : $_POST['redirect_to'] . '#comment-' . $comment->comment_ID;
 
+// Add specific query arguments to display the awaiting moderation message.
+if ( 'unapproved' === wp_get_comment_status( $comment ) && ! empty( $comment->comment_author_email ) ) {
+	$location = add_query_arg(
+		array(
+			'unapproved'      => $comment->comment_ID,
+			'moderation-hash' => wp_hash( $comment->comment_date_gmt ),
+		),
+		$location
+	);
+}
+
 /**
  * Filters the location URI to send the commenter after posting.
  *