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 / Media / AudioPlayer.php
codepress-admin-columns / classes / Formatter / Media Last commit date
Audio 5 months ago Video 5 months ago AttachmentMetaData.php 5 months ago AttachmentUrl.php 5 months ago AudioPlayer.php 5 months ago AvailableSizes.php 5 months ago Dimensions.php 5 months ago Download.php 5 months ago ExifData.php 5 months ago FileLinkToUrl.php 5 months ago FileName.php 5 months ago FileSize.php 5 months ago Link.php 5 months ago NestedAttachmentMetaData.php 5 months ago NumberFormat.php 5 months ago PostMimeType.php 5 months ago PreviewViewLink.php 5 months ago VideoEmbed.php 5 months ago
AudioPlayer.php
49 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\Formatter\Media;
6
7 use AC\ApplyFilter\ValidAudioMimetypes;
8 use AC\Exception\ValueNotFoundException;
9 use AC\Formatter;
10 use AC\Type\Value;
11
12 class AudioPlayer implements Formatter
13 {
14
15 public function format(Value $value): Value
16 {
17 $src = $this->is_valid_mime_type($value->get_id())
18 ? wp_get_attachment_url($value->get_id())
19 : null;
20
21 if ( ! $src) {
22 throw new ValueNotFoundException();
23 }
24
25 return $value->with_value(
26 sprintf(
27 '<audio controls preload="none" src="%s">%s</audio>',
28 esc_url($src),
29 __('No support for audio player', 'codepress-admin-columns')
30 )
31 );
32 }
33
34 private function get_valid_mime_types(): array
35 {
36 return (new ValidAudioMimetypes())->apply_filters();
37 }
38
39 private function is_valid_mime_type($id): bool
40 {
41 return in_array($this->get_mime_type($id), $this->get_valid_mime_types(), true);
42 }
43
44 private function get_mime_type($id): string
45 {
46 return (string)get_post_field('post_mime_type', $id);
47 }
48
49 }