mirror of
https://github.com/WordPress/WordPress.git
synced 2024-11-05 10:22:23 +01:00
2afa2b446f
Introduce an object_subtype argument to the args array for register_meta() which can be used to limit meta registration to a single subtype (e.g. a custom post type or taxonomy, vs all posts or taxonomies). Introduce register_post_meta() and register_term_meta() wrapper methods for register_meta to provide a convenient interface for the common case of registering meta for a specific taxonomy or post type. These methods work the way plugin developers have often expected register_meta to function, and should be used in place of direct register_meta where possible. Props flixos90, tharsheblows, spacedmonkey. Merges [43378] to the 4.9 branch. Fixes #38323. Built from https://develop.svn.wordpress.org/branches/4.9@43510 git-svn-id: http://core.svn.wordpress.org/branches/4.9@43339 1a063a9b-81f0-0310-95a4-ce76da25c4cd
71 lines
1.2 KiB
PHP
71 lines
1.2 KiB
PHP
<?php
|
|
/**
|
|
* REST API: WP_REST_Term_Meta_Fields class
|
|
*
|
|
* @package WordPress
|
|
* @subpackage REST_API
|
|
* @since 4.7.0
|
|
*/
|
|
|
|
/**
|
|
* Core class used to manage meta values for terms via the REST API.
|
|
*
|
|
* @since 4.7.0
|
|
*
|
|
* @see WP_REST_Meta_Fields
|
|
*/
|
|
class WP_REST_Term_Meta_Fields extends WP_REST_Meta_Fields {
|
|
|
|
/**
|
|
* Taxonomy to register fields for.
|
|
*
|
|
* @since 4.7.0
|
|
* @var string
|
|
*/
|
|
protected $taxonomy;
|
|
|
|
/**
|
|
* Constructor.
|
|
*
|
|
* @since 4.7.0
|
|
*
|
|
* @param string $taxonomy Taxonomy to register fields for.
|
|
*/
|
|
public function __construct( $taxonomy ) {
|
|
$this->taxonomy = $taxonomy;
|
|
}
|
|
|
|
/**
|
|
* Retrieves the object meta type.
|
|
*
|
|
* @since 4.7.0
|
|
*
|
|
* @return string The meta type.
|
|
*/
|
|
protected function get_meta_type() {
|
|
return 'term';
|
|
}
|
|
|
|
/**
|
|
* Retrieves the object 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->taxonomy;
|
|
}
|
|
|
|
/**
|
|
* Retrieves the type for register_rest_field().
|
|
*
|
|
* @since 4.7.0
|
|
*
|
|
* @return string The REST field type.
|
|
*/
|
|
public function get_rest_field_type() {
|
|
return 'post_tag' === $this->taxonomy ? 'tag' : $this->taxonomy;
|
|
}
|
|
}
|