PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 7.1.4
Admin Columns v7.1.4
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 / ColumnFactory / Post / PermalinkFactory.php
codepress-admin-columns / classes / ColumnFactory / Post Last commit date
AttachmentFactory.php 2 days ago AuthorFactory.php 2 days ago BeforeMoreFactory.php 2 days ago CommentCountFactory.php 2 days ago CommentStatusFactory.php 2 days ago ContentFactory.php 2 days ago DatePublishFactory.php 2 days ago DepthFactory.php 2 days ago DiscussionFactory.php 2 days ago EstimateReadingTimeFactory.php 2 days ago ExcerptFactory.php 2 days ago FeaturedImageFactory.php 2 days ago FormatsFactory.php 2 days ago IdFactory.php 2 days ago LastModifiedAuthorFactory.php 2 days ago LastModifiedFactory.php 2 days ago MenuFactory.php 2 days ago OrderFactory.php 2 days ago PageTemplateFactory.php 2 days ago ParentFactory.php 2 days ago PasswordProtectedFactory.php 2 days ago PathFactory.php 2 days ago PermalinkFactory.php 2 days ago PingStatusFactory.php 2 days ago ShortLinkFactory.php 2 days ago ShortcodesFactory.php 2 days ago SlugFactory.php 2 days ago StatusFactory.php 2 days ago StickyFactory.php 2 days ago TaxonomyFactory.php 2 days ago TitleRawFactory.php 2 days ago WordCountFactory.php 2 days ago
PermalinkFactory.php
68 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\ColumnFactory\Post;
6
7 use AC;
8 use AC\Column\BaseColumnFactory;
9 use AC\FormatterCollection;
10 use AC\Setting\ComponentCollection;
11 use AC\Setting\ComponentFactory\BeforeAfter;
12 use AC\Setting\ComponentFactory\IsLink;
13 use AC\Setting\Config;
14 use AC\Setting\DefaultSettingsBuilder;
15
16 class PermalinkFactory extends BaseColumnFactory
17 {
18 private BeforeAfter $before_after;
19
20 private IsLink $is_link;
21
22 public function __construct(
23 DefaultSettingsBuilder $default_settings_builder,
24 BeforeAfter $before_after,
25 IsLink $is_link
26 ) {
27 parent::__construct(
28 $default_settings_builder
29 );
30 $this->before_after = $before_after;
31 $this->is_link = $is_link;
32 }
33
34 protected function get_settings(Config $config): ComponentCollection
35 {
36 return new ComponentCollection([
37 $this->is_link->create($config),
38 $this->before_after->create($config),
39 ]);
40 }
41
42 public function get_column_type(): string
43 {
44 return 'column-permalink';
45 }
46
47 public function get_label(): string
48 {
49 return __('Permalink', 'codepress-admin-columns');
50 }
51
52 protected function get_formatters(Config $config): FormatterCollection
53 {
54 $formatters = parent::get_formatters($config);
55
56 $formatters->add(new AC\Formatter\Post\Permalink());
57
58 if ($config->get('is_link') === 'on') {
59 $formatters->add(new AC\Formatter\Linkable());
60 }
61
62 $formatters->add(AC\Formatter\BeforeAfter::create_from_config($config));
63
64 return $formatters;
65 }
66
67 }
68