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

(WP_Post_Type) (Required) Post type object.

$fields

(array) (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

Changelog
Version Description
WP-4.6.0 Converted the $post_type parameter to accept a WP_Post_Type object.
WP-3.4.0 Introduced.