Authors.php
10 months ago
Categories.php
10 months ago
DeviceBrowsers.php
10 months ago
DeviceOperatingSystems.php
10 months ago
DeviceTypes.php
10 months ago
LinkPatterns.php
10 months ago
PageTypes.php
10 months ago
ReferrerTypes.php
10 months ago
PageTypes.php
40 lines
| 1 | <?php |
| 2 | |
| 3 | namespace IAWP\ColumnOptions\Plugins; |
| 4 | |
| 5 | use IAWP\ColumnOptions\Option; |
| 6 | use IAWP\ColumnOptions\OptionsPlugin; |
| 7 | /** @internal */ |
| 8 | class PageTypes implements OptionsPlugin |
| 9 | { |
| 10 | public function get_options() : array |
| 11 | { |
| 12 | $options = []; |
| 13 | $options[] = new Option('post', \esc_html__('Post', 'independent-analytics')); |
| 14 | $options[] = new Option('page', \esc_html__('Page', 'independent-analytics')); |
| 15 | $options[] = new Option('attachment', \esc_html__('Attachment', 'independent-analytics')); |
| 16 | foreach (\get_post_types(['public' => \true, '_builtin' => \false]) as $custom_type) { |
| 17 | $options[] = new Option($custom_type, \get_post_type_object($custom_type)->labels->singular_name); |
| 18 | } |
| 19 | $options[] = new Option('category', \esc_html__('Category', 'independent-analytics')); |
| 20 | $options[] = new Option('post_tag', \esc_html__('Tag', 'independent-analytics')); |
| 21 | foreach (\get_taxonomies(['public' => \true, '_builtin' => \false]) as $taxonomy) { |
| 22 | $label = \get_taxonomy_labels(\get_taxonomy($taxonomy))->singular_name; |
| 23 | /** |
| 24 | * WooCommerce category and tag taxonomies have the same singular name as WordPress |
| 25 | * category and tag taxonomies, so use the name here instead |
| 26 | */ |
| 27 | if (\in_array($taxonomy, ['product_cat', 'product_tag'])) { |
| 28 | $label = \get_taxonomy_labels(\get_taxonomy($taxonomy))->name; |
| 29 | } |
| 30 | $options[] = new Option($taxonomy, \ucwords($label)); |
| 31 | } |
| 32 | $options[] = new Option('blog-archive', \esc_html__('Blog Home', 'independent-analytics')); |
| 33 | $options[] = new Option('author-archive', \esc_html__('Author Archive', 'independent-analytics')); |
| 34 | $options[] = new Option('date-archive', \esc_html__('Date Archive', 'independent-analytics')); |
| 35 | $options[] = new Option('search-archive', \esc_html__('Search Results', 'independent-analytics')); |
| 36 | $options[] = new Option('not-found', \esc_html__('404', 'independent-analytics')); |
| 37 | return $options; |
| 38 | } |
| 39 | } |
| 40 |