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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
<?php /** * WPSEO plugin file. * * @package WPSEO */
/** * WPSEO_Custom_Taxonomies. */ class WPSEO_Custom_Taxonomies {
/** * Custom taxonomies cache. * * @var array */ protected static $custom_taxonomies = null;
/** * Gets the names of the custom taxonomies, prepends 'ct_' and 'ct_desc', and returns them in an array. * * @return array The custom taxonomy prefixed names. */ public static function get_custom_taxonomies() { // Use cached value if available. if ( ! is_null( self::$custom_taxonomies ) ) { return self::$custom_taxonomies; }
self::$custom_taxonomies = array(); $args = array( 'public' => true, '_builtin' => false, ); $custom_taxonomies = get_taxonomies( $args, 'names', 'and' );
if ( is_array( $custom_taxonomies ) ) { foreach ( $custom_taxonomies as $custom_taxonomy ) { array_push( self::$custom_taxonomies, self::add_custom_taxonomies_prefix( $custom_taxonomy ), self::add_custom_taxonomies_description_prefix( $custom_taxonomy ) ); } }
return self::$custom_taxonomies; }
/** * Adds the ct_ prefix to a taxonomy. * * @param string $taxonomy The taxonomy to prefix. * * @return string The prefixed taxonomy. */ private static function add_custom_taxonomies_prefix( $taxonomy ) { return 'ct_' . $taxonomy; }
/** * Adds the ct_desc_ prefix to a taxonomy. * * @param string $taxonomy The taxonomy to prefix. * * @return string The prefixed taxonomy. */ private static function add_custom_taxonomies_description_prefix( $taxonomy ) { return 'ct_desc_' . $taxonomy; } }
|