PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 4.3.2
Admin Columns v4.3.2
7.0.19 2.3.5 2.4 2.4.1 2.4.10 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.6.1 2.5.6.2 2.5.6.3 2.5.6.4 3.0 3.0.1 3.0.2 3.0.3 3.0.5 3.0.7 3.1 3.1.1 3.1.10 3.1.2 3.1.3 3.1.5 3.2.3 3.2.7 3.3.1 3.4.1 3.4.6 3.4.8 4.0.1 4.0.3 4.1.6 4.2.2 4.2.5 4.3 4.3.2 4.4.1 4.4.4 4.4.5 4.5.5 4.6.1 4.7.18 4.7.19 4.7.20 4.7.7 7.0.13 7.0.14 7.0.16 trunk 1.0 1.1 1.1.3 1.2 1.2.1 1.3 1.3.1 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.5.1 1.4.6 1.4.6.1 1.4.6.2 1.4.6.3 1.4.6.4 1.4.7 1.4.8 1.4.9 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.2 2.2.1 2.2.1.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.5.1 2.2.6 2.2.6.1 2.2.6.2 2.2.6.3 2.2.6.4 2.2.7 2.2.8 2.2.8.1 2.2.9 2.3.1 2.3.2 2.3.3
codepress-admin-columns / classes / Column / Taxonomy.php
codepress-admin-columns / classes / Column Last commit date
Comment 5 years ago Media 5 years ago Post 5 years ago User 5 years ago Actions.php 5 years ago AjaxValue.php 5 years ago CustomField.php 5 years ago Menu.php 5 years ago Meta.php 5 years ago Placeholder.php 5 years ago Relation.php 5 years ago Taxonomy.php 5 years ago WooCommercePlaceholder.php 5 years ago
Taxonomy.php
68 lines
1 <?php
2
3 namespace AC\Column;
4
5 use AC\Collection;
6 use AC\Column;
7 use AC\Settings;
8
9 /**
10 * Taxonomy column, displaying terms from a taxonomy for any object type (i.e. posts)
11 * supporting WordPress' native way of handling terms.
12 * @since 2.0
13 */
14 class Taxonomy extends Column {
15
16 public function __construct() {
17 $this->set_type( 'column-taxonomy' );
18 $this->set_label( __( 'Taxonomy', 'codepress-admin-columns' ) );
19 }
20
21 public function get_taxonomy() {
22 return $this->get_option( 'taxonomy' );
23 }
24
25 public function get_value( $post_id ) {
26 $_terms = $this->get_raw_value( $post_id );
27 if ( empty( $_terms ) ) {
28 return $this->get_empty_char();
29 }
30
31 $collection = new Collection( $_terms );
32 $terms = [];
33
34 foreach ( $collection as $term ) {
35 $terms[] = $this->get_formatted_value( $term->name, $term );
36 }
37
38 if ( empty( $terms ) ) {
39 return $this->get_empty_char();
40 }
41
42 $setting_limit = $this->get_setting( 'number_of_items' );
43
44 return ac_helper()->html->more( $terms, $setting_limit ? $setting_limit->get_value() : false );
45 }
46
47 /**
48 * @param int $post_id
49 *
50 * @return array|false
51 */
52 public function get_raw_value( $post_id ) {
53 $terms = get_the_terms( $post_id, $this->get_taxonomy() );
54
55 if ( ! $terms || is_wp_error( $terms ) ) {
56 return false;
57 }
58
59 return $terms;
60 }
61
62 public function register_settings() {
63 $this->add_setting( new Settings\Column\Taxonomy( $this ) );
64 $this->add_setting( new Settings\Column\TermLink( $this ) );
65 $this->add_setting( new Settings\Column\NumberOfItems( $this ) );
66 }
67
68 }