diff --git a/src/wp-includes/comment.php b/src/wp-includes/comment.php index d671597ed5..b30df85eda 100644 --- a/src/wp-includes/comment.php +++ b/src/wp-includes/comment.php @@ -2239,7 +2239,7 @@ function wp_update_comment($commentarr) { $comment_ID = $data['comment_ID']; $comment_post_ID = $data['comment_post_ID']; - $keys = array( 'comment_content', 'comment_author', 'comment_author_email', 'comment_approved', 'comment_karma', 'comment_author_url', 'comment_date', 'comment_date_gmt', 'comment_parent' ); + $keys = array( 'comment_content', 'comment_author', 'comment_author_email', 'comment_approved', 'comment_karma', 'comment_author_url', 'comment_date', 'comment_date_gmt', 'comment_type', 'comment_parent' ); $data = wp_array_slice_assoc( $data, $keys ); $rval = $wpdb->update( $wpdb->comments, $data, compact( 'comment_ID' ) ); diff --git a/tests/phpunit/tests/comment.php b/tests/phpunit/tests/comment.php index 6271696201..7514f90df3 100644 --- a/tests/phpunit/tests/comment.php +++ b/tests/phpunit/tests/comment.php @@ -15,6 +15,19 @@ class Tests_Comment extends WP_UnitTestCase { $this->assertEquals( 0, $result ); } + /** + * @ticket 30627 + */ + function test_wp_update_comment_updates_comment_type() { + $post_id = $this->factory->post->create(); + $comment_id = $this->factory->comment->create( array( 'comment_post_ID' => $post_id ) ); + + wp_update_comment( array( 'comment_ID' => $comment_id, 'comment_type' => 'pingback' ) ); + + $comment = get_comment( $comment_id ); + $this->assertEquals( 'pingback', $comment->comment_type ); + } + public function test_get_approved_comments() { $p = $this->factory->post->create(); $ca1 = $this->factory->comment->create( array( 'comment_post_ID' => $p, 'comment_approved' => '1' ) );