类文档

WP_REST_Post_Meta_Fields

💡 云策文档标注

概述

WP_REST_Post_Meta_Fields 是 WordPress 核心类,用于通过 REST API 管理文章的自定义字段(meta values)。它继承自 WP_REST_Meta_Fields,专门处理文章类型的元数据操作。

关键要点

  • 继承自 WP_REST_Meta_Fields,提供文章元数据的 REST API 管理功能
  • 构造函数接受 $post_type 参数,指定要注册字段的文章类型
  • 包含 get_meta_type()、get_meta_subtype() 和 get_rest_field_type() 方法,用于获取元数据类型和 REST 字段类型
  • 自 WordPress 4.7.0 版本引入,是 REST API 元数据支持的核心组件

代码示例

class WP_REST_Post_Meta_Fields extends WP_REST_Meta_Fields {
    protected $post_type;

    public function __construct( $post_type ) {
        $this->post_type = $post_type;
    }

    protected function get_meta_type() {
        return 'post';
    }

    protected function get_meta_subtype() {
        return $this->post_type;
    }

    public function get_rest_field_type() {
        return $this->post_type;
    }
}

📄 原文内容

Core class used to manage meta values for posts via the REST API.

Description

See also

Methods

Name Description
WP_REST_Post_Meta_Fields::__construct Constructor.
WP_REST_Post_Meta_Fields::get_meta_subtype Retrieves the post meta subtype.
WP_REST_Post_Meta_Fields::get_meta_type Retrieves the post meta type.
WP_REST_Post_Meta_Fields::get_rest_field_type Retrieves the type for register_rest_field() .

Source

class WP_REST_Post_Meta_Fields extends WP_REST_Meta_Fields {

	/**
	 * Post type to register fields for.
	 *
	 * @since 4.7.0
	 * @var string
	 */
	protected $post_type;

	/**
	 * Constructor.
	 *
	 * @since 4.7.0
	 *
	 * @param string $post_type Post type to register fields for.
	 */
	public function __construct( $post_type ) {
		$this->post_type = $post_type;
	}

	/**
	 * Retrieves the post meta type.
	 *
	 * @since 4.7.0
	 *
	 * @return string The meta type.
	 */
	protected function get_meta_type() {
		return 'post';
	}

	/**
	 * Retrieves the post meta subtype.
	 *
	 * @since 4.9.8
	 *
	 * @return string Subtype for the meta type, or empty string if no specific subtype.
	 */
	protected function get_meta_subtype() {
		return $this->post_type;
	}

	/**
	 * Retrieves the type for register_rest_field().
	 *
	 * @since 4.7.0
	 *
	 * @see register_rest_field()
	 *
	 * @return string The REST field type.
	 */
	public function get_rest_field_type() {
		return $this->post_type;
	}
}

Changelog

Version Description
4.7.0 Introduced.