wp_xmlrpc_server::wp_getPostType( array $args )

Retrieves a post type.


Description

See also


Parameters

$args

(Required) Method arguments. Note: arguments must be ordered as documented.<br>

  • (int) Blog ID (unused).<br>
  • '1'
    (string) Username.<br>
  • '2'
    (string) Password.<br>
  • '3'
    (string) Post type name.<br>
  • '4'
    (array) Optional. Fields to fetch.<br>


Return

(array|IXR_Error) Array contains:<br>

  • 'labels'<br>
  • 'description'<br>
  • 'capability_type'<br>
  • 'cap'<br>
  • 'map_meta_cap'<br>
  • 'hierarchical'<br>
  • 'menu_position'<br>
  • 'taxonomies'<br>
  • 'supports'


Source

File: wp-includes/class-wp-xmlrpc-server.php

	public function wp_getPostType( $args ) {
		if ( ! $this->minimum_args( $args, 4 ) )
			return $this->error;

		$this->escape( $args );

		$username       = $args[1];
		$password       = $args[2];
		$post_type_name = $args[3];

		if ( isset( $args[4] ) ) {
			$fields = $args[4];
		} else {
			/**
			 * Filters the default query fields used by the given XML-RPC method.
			 *
			 * @since WP-3.4.0
			 *
			 * @param array  $fields An array of post type query fields for the given method.
			 * @param string $method The method name.
			 */
			$fields = apply_filters( 'xmlrpc_default_posttype_fields', array( 'labels', 'cap', 'taxonomies' ), 'wp.getPostType' );
		}

		if ( !$user = $this->login( $username, $password ) )
			return $this->error;

		/** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
		do_action( 'xmlrpc_call', 'wp.getPostType' );

		if ( ! post_type_exists( $post_type_name ) )
			return new IXR_Error( 403, __( 'Invalid post type.' ) );

		$post_type = get_post_type_object( $post_type_name );

		if ( ! current_user_can( $post_type->cap->edit_posts ) )
			return new IXR_Error( 401, __( 'Sorry, you are not allowed to edit posts in this post type.' ) );

		return $this->_prepare_post_type( $post_type, $fields );
	}


Changelog

Changelog
Version Description
3.4.0 Introduced.