1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
<?php // phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
/**
* Taxonomy endpoint.
*/
abstract class WPCOM_JSON_API_Taxonomy_Endpoint extends WPCOM_JSON_API_Endpoint {
/**
* Category object format.
*
* @var array
*/
public $category_object_format = array(
'ID' => '(int) The category ID.',
'name' => '(string) The name of the category.',
'slug' => '(string) The slug of the category.',
'description' => '(string) The description of the category.',
'post_count' => '(int) The number of posts using this category.',
'feed_url' => '(string) The URL of the feed for this category.',
'parent' => '(int) The parent ID for the category.',
'meta' => '(object) Meta data',
);
/**
* Tag object format.
*
* @var array
*/
public $tag_object_format = array(
'ID' => '(int) The tag ID.',
'name' => '(string) The name of the tag.',
'slug' => '(string) The slug of the tag.',
'description' => '(string) The description of the tag.',
'post_count' => '(int) The number of posts using this t.',
'meta' => '(object) Meta data',
);
/**
* Constructor function.
*
* @param string|array|object $args - the arguments.
*/
public function __construct( $args ) {
parent::__construct( $args );
if ( preg_match( '#/tags/#i', $this->path ) ) {
$this->response_format =& $this->tag_object_format;
} else {
$this->response_format =& $this->category_object_format;
}
}
}
|