Как отобразить больше тегов ID3 аудиофайла в WordPress
При добавлении аудиофайла в WordPress он автоматически берет название, альбом, исполнителя из тегов ID3 в файле mp3. Он использует их на странице воспроизведения и вложения аудиофайлов.
Как я могу заставить WordPress также использовать теги комментариев или описания контента?
Причина, по которой это необходимо, заключается в том, чтобы иметь возможность создать пользовательский шаблон списка воспроизведения WordPress, в котором будет отображаться название трека +Комментарий/Описание.
Например, если мы у меня был mp3-файл с тегом заголовка Первая глава и комментарием/описанием: Введение в WordPress, я хотел бы, чтобы список воспроизведения отображал:
Глава первая: Введение в WordPress
Я понимаю, что могу изменить тег ID3 заголовка, чтобы он содержал эту информацию, но я бы предпочел фильтр или функцию в WordPress, которая позволяет мне делать это без необходимости изменять теги ID3 исходного mp3-файла.
И хотя я мог бы поиграть со встроенной подписью WordPress поле для аудиофайлов, я также хочу избежать этого, потому что его нужно создавать вручную, в то время как я мог бы автоматически заполнять теги ID3 с помощью любого соответствующего программного обеспечения.
1 answers
Итак, через два месяца после публикации моего вопроса я наконец нашел ответ! Он основан на коде, который я нашел здесь на WordPress StackExchange, который использовался в ответе на другой вопрос. :)
Я только что добавил следующее в начало своего пользовательского плейлиста плагина (который также основан на коде из ответа здесь):
// Add id3 tags as meta keys
add_filter( 'wp_get_attachment_id3_keys', $callback_id3 = function( $fields )
{
$fields['title'] = 'Track Title';
$fields['comments'] = 'Comments';
$fields['filesize'] = 'File Size';
return $fields;
} );
А затем в шаблоне списка воспроизведения я только что добавил {{ data.meta.title }}
, {{ data.meta.comments}}
, и {{ data.meta.filesize}}
где я хотел, чтобы они были показаны.
В причина, по которой я добавил title
, заключается в том, что по умолчанию {{ data.title }}
показывает имя файла без расширения вместо фактического названия трека, записанного в тегах ID3, и {{ data.meta.title }}
дал мне фактическое название тега ID3.
Стоит отметить, что мне было трудно с тегом comments
, потому что везде, где я смотрел на теги комментариев ID3 (документация, массив метаданных wp и т. Д.), Он был написан в единственном числе (просто comment
). Но затем я проверил getID3 и обнаружил, что он использует форму множественного числаcomments
. Таким образом, добавление s
наконец-то показал мои комментарии ID3.
Я все еще пытаюсь понять, как заставить filesize
отображаться в более удобочитаемом виде (похоже, для меня это вопрос проб и ошибок). Если я не смогу понять это, я спрошу здесь.
Спасибо сообществу здесь за публикацию всех различных ответов и примеров кода - я бы не смог разобраться в этом без ресурсов здесь. Так благодарен:)