wp_xmlrpc_server::_prepare_post_type( WP_Post_Type $post_type, array $fields )
Prepares post data for return in an XML-RPC object.
Parameters
- $post_type
-
(Required) Post type object.
- $fields
-
(Required) The subset of post fields to return.
Return
(array) The prepared post type data.
Source
File: wp-includes/class-wp-xmlrpc-server.php
protected function _prepare_post_type( $post_type, $fields ) {
$_post_type = array(
'name' => $post_type->name,
'label' => $post_type->label,
'hierarchical' => (bool) $post_type->hierarchical,
'public' => (bool) $post_type->public,
'show_ui' => (bool) $post_type->show_ui,
'_builtin' => (bool) $post_type->_builtin,
'has_archive' => (bool) $post_type->has_archive,
'supports' => get_all_post_type_supports( $post_type->name ),
);
if ( in_array( 'labels', $fields ) ) {
$_post_type['labels'] = (array) $post_type->labels;
}
if ( in_array( 'cap', $fields ) ) {
$_post_type['cap'] = (array) $post_type->cap;
$_post_type['map_meta_cap'] = (bool) $post_type->map_meta_cap;
}
if ( in_array( 'menu', $fields ) ) {
$_post_type['menu_position'] = (int) $post_type->menu_position;
$_post_type['menu_icon'] = $post_type->menu_icon;
$_post_type['show_in_menu'] = (bool) $post_type->show_in_menu;
}
if ( in_array( 'taxonomies', $fields ) )
$_post_type['taxonomies'] = get_object_taxonomies( $post_type->name, 'names' );
/**
* Filters XML-RPC-prepared date for the given post type.
*
* @since WP-3.4.0
* @since WP-4.6.0 Converted the `$post_type` parameter to accept a WP_Post_Type object.
*
* @param array $_post_type An array of post type data.
* @param WP_Post_Type $post_type Post type object.
*/
return apply_filters( 'xmlrpc_prepare_post_type', $_post_type, $post_type );
}
Changelog
Version | Description |
---|---|
WP-4.6.0 | Converted the $post_type parameter to accept a WP_Post_Type object. |
WP-3.4.0 | Introduced. |