Откуда берутся значки для медиафайлов
Я загрузил несколько PDF-файлов в медиатеку.
Я не могу найти способ установить значок браузера для медиафайлов PDF.
Откуда WordPress берет значок?
Есть ли в любом случае возможность управлять фавиконом медиафайла PDF?
4 answers
Подводя итог обсуждению в комментариях, ответ на заданный вопрос заключается в том, что это невозможно. Веб-стандарты в их нынешнем виде не позволяют объявлять значок для файлов PDF, только для всего домена через значок.файл ico.
Вы можете попытаться обойти это с помощью
Установите значок.ico в корне сайта к значку, который вы хотите связать с медиафайлами, и используйте функцию значка сайта wordpress 4.3 для обработки значок для html (который должен иметь приоритет над favicon.ico).
Разместите на сервере медиафайлы из другого домена (например, поддомена основного сайта) и установите там значок.ico, которое вы хотите связать с медиафайлами.
Ну, я думаю, вам нужно всего лишь изменить файл favicon.ico
в корневом каталоге WordPress.
Предыдущий ответ:
Я думаю, вы хотите изменить этот значок (/wp-includes/images/media/document.png
):
, который отображается для PDF-документов в Media Library
.
Затем вы можете использовать фильтр wp_mime_type_icon
, чтобы изменить значок:
add_filter( 'wp_mime_type_icon', function( $icon, $mime, $post_id )
{
if( 'application/pdf' === $mime && $post_id > 0 )
$icon = 'http://example.tld/pdf.png'; // Modify this to your needs!
return $icon;
}, 10, 3 );
Но для фавиконов вы можете проверить мой ответ здесь.
Если у вас возникает конфликт между вашим сайтом WP, имеющим один значок, и вашей папкой загрузок, имеющей другой, убедитесь, что у вас нет более старого значка.ico задерживается в вашем корневом каталоге, в то время как ваш новый был добавлен через администратора сайта WP. Только что столкнулся с этим на сайте.
Просто загрузите нужный значок.ico в корневую папку websait. Затем обновите страницу .pdf или очистите все кэши.
Только что протестирован в Wordpress 5.4, и он работает как шарм. :)