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 / Formatter / Media / Link.php
codepress-admin-columns / classes / Formatter / Media Last commit date
Audio 2 days ago Video 2 days ago AttachmentMetaData.php 2 days ago AttachmentUrl.php 2 days ago AudioPlayer.php 2 days ago AvailableSizes.php 2 days ago Dimensions.php 2 days ago Download.php 2 days ago ExifData.php 2 days ago FileLinkToUrl.php 2 days ago FileName.php 2 days ago FileSize.php 2 days ago Link.php 2 days ago NestedAttachmentMetaData.php 2 days ago NumberFormat.php 2 days ago PostMimeType.php 2 days ago PreviewViewLink.php 2 days ago VideoEmbed.php 2 days ago
Link.php
50 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\Formatter\Media;
6
7 use AC\Formatter;
8 use AC\Type\Value;
9
10 class Link implements Formatter
11 {
12 private string $type;
13
14 public function __construct(string $type)
15 {
16 $this->type = $type;
17 }
18
19 protected function get_view_link(Value $value): ?string
20 {
21 $url = get_attachment_link($value->get_id());
22
23 return $url
24 ? sprintf('<a href="%s">%s</a>', $url, $value->get_value())
25 : $value->get_value();
26 }
27
28 protected function get_download_link(Value $value): ?string
29 {
30 $url = wp_get_attachment_url($value->get_id());
31
32 return $url
33 ? sprintf('<a href="%s" download>%s</a>', $url, $value->get_value())
34 : null;
35 }
36
37 public function format(Value $value): Value
38 {
39 switch ($this->type) {
40 case 'view':
41 return $value->with_value($this->get_view_link($value));
42 case 'download':
43 return $value->with_value($this->get_download_link($value));
44 default:
45 return $value;
46 }
47 }
48
49 }
50