PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 7.0.13
Admin Columns v7.0.13
7.1.4 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 / Formatter / Term / TermLink.php
codepress-admin-columns / classes / Formatter / Term Last commit date
Meta.php 5 months ago Slug.php 5 months ago TermLink.php 5 months ago TermProperty.php 5 months ago
TermLink.php
60 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\Formatter\Term;
6
7 use AC\Formatter;
8 use AC\Helper;
9 use AC\Type\PostTypeSlug;
10 use AC\Type\Value;
11 use WP_Term;
12
13 class TermLink implements Formatter
14 {
15
16 private string $link_to;
17
18 private ?PostTypeSlug $post_type;
19
20 public function __construct(string $link_to, ?PostTypeSlug $post_type = null)
21 {
22 $this->link_to = $link_to;
23 $this->post_type = $post_type;
24 }
25
26 public function format(Value $value): Value
27 {
28 $link = null;
29
30 switch ($this->link_to) {
31 case 'filter':
32 $term = get_term($value->get_id());
33
34 if ($term instanceof WP_Term) {
35 $link = Helper\Taxonomy::create()->get_filter_by_term_url(
36 $term,
37 (string)$this->post_type
38 );
39
40 $link = apply_filters(
41 'ac/formatter/term/link',
42 $link,
43 $term,
44 (string)$this->post_type
45 );
46 }
47 break;
48 case 'edit' :
49 $term = get_term($value->get_id());
50 $link = $term instanceof \WP_Term ? get_edit_term_link($term, $term->taxonomy) : null;
51
52 break;
53 }
54
55 return $link
56 ? $value->with_value(Helper\Html::create()->link($link, (string)$value))
57 : $value;
58 }
59
60 }