Title: wp_xmlrpc_server::_prepare_comment
Published: April 25, 2014
Last modified: April 28, 2025

---

# wp_xmlrpc_server::_prepare_comment( WP_Comment $comment ): array

## In this article

 * [Parameters](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#parameters)
 * [Return](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#return)
 * [Source](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#source)
 * [Hooks](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#hooks)
 * [Related](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#related)

[ Back to top](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#wp--skip-link--target)

Prepares comment data for return in an XML-RPC object.

## 󠀁[Parameters](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#parameters)󠁿

 `$comment`[WP_Comment](https://developer.wordpress.org/reference/classes/wp_comment/)
required

The unprepared comment data.

## 󠀁[Return](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#return)󠁿

 array The prepared comment data.

## 󠀁[Source](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#source)󠁿

    ```php
    protected function _prepare_comment( $comment ) {
    	// Format page date.
    	$comment_date_gmt = $this->_convert_date_gmt( $comment->comment_date_gmt, $comment->comment_date );

    	if ( '0' === $comment->comment_approved ) {
    		$comment_status = 'hold';
    	} elseif ( 'spam' === $comment->comment_approved ) {
    		$comment_status = 'spam';
    	} elseif ( '1' === $comment->comment_approved ) {
    		$comment_status = 'approve';
    	} else {
    		$comment_status = $comment->comment_approved;
    	}
    	$_comment = array(
    		'date_created_gmt' => $comment_date_gmt,
    		'user_id'          => $comment->user_id,
    		'comment_id'       => $comment->comment_ID,
    		'parent'           => $comment->comment_parent,
    		'status'           => $comment_status,
    		'content'          => $comment->comment_content,
    		'link'             => get_comment_link( $comment ),
    		'post_id'          => $comment->comment_post_ID,
    		'post_title'       => get_the_title( $comment->comment_post_ID ),
    		'author'           => $comment->comment_author,
    		'author_url'       => $comment->comment_author_url,
    		'author_email'     => $comment->comment_author_email,
    		'author_ip'        => $comment->comment_author_IP,
    		'type'             => $comment->comment_type,
    	);

    	/**
    	 * Filters XML-RPC-prepared data for the given comment.
    	 *
    	 * @since 3.4.0
    	 *
    	 * @param array      $_comment An array of prepared comment data.
    	 * @param WP_Comment $comment  Comment object.
    	 */
    	return apply_filters( 'xmlrpc_prepare_comment', $_comment, $comment );
    }
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-includes/class-wp-xmlrpc-server.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/6.9.4/src/wp-includes/class-wp-xmlrpc-server.php#L1189)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/6.9.4/src/wp-includes/class-wp-xmlrpc-server.php#L1189-L1228)

## 󠀁[Hooks](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#hooks)󠁿

 [apply_filters( ‘xmlrpc_prepare_comment’, array $_comment, WP_Comment $comment )](https://developer.wordpress.org/reference/hooks/xmlrpc_prepare_comment/)

Filters XML-RPC-prepared data for the given comment.

## 󠀁[Related](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#related)󠁿

| Uses | Description | 
| [get_the_title()](https://developer.wordpress.org/reference/functions/get_the_title/)`wp-includes/post-template.php` |

Retrieves the post title.

  | 
| [wp_xmlrpc_server::_convert_date_gmt()](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_convert_date_gmt/)`wp-includes/class-wp-xmlrpc-server.php` |

Converts a WordPress GMT date string to an [IXR_Date](https://developer.wordpress.org/reference/classes/ixr_date/) object.

  | 
| [get_comment_link()](https://developer.wordpress.org/reference/functions/get_comment_link/)`wp-includes/comment-template.php` |

Retrieves the link to a given comment.

  | 
| [apply_filters()](https://developer.wordpress.org/reference/functions/apply_filters/)`wp-includes/plugin.php` |

Calls the callback functions that have been added to a filter hook.

  |

[Show 1 more](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#)
[Show less](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/_prepare_comment/?output_format=md#)

| Used by | Description | 
| [wp_xmlrpc_server::wp_getComments()](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/wp_getcomments/)`wp-includes/class-wp-xmlrpc-server.php` |

Retrieves comments.

  | 
| [wp_xmlrpc_server::wp_getComment()](https://developer.wordpress.org/reference/classes/wp_xmlrpc_server/wp_getcomment/)`wp-includes/class-wp-xmlrpc-server.php` |

Retrieves a comment.

  |

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Fclasses%2Fwp_xmlrpc_server%2F_prepare_comment%2F)
before being able to contribute a note or feedback.