Intereting Posts
отображать самые популярные теги категории? Как я могу создать RSS-канал на основе пользовательского WP_Query? Как настроить суб-URL-адреса на веб-сайте wordpress (.htaccess) Невозможно создать новое сообщение в пользовательском типе сообщения Как отображать термины из двух таксономий в одном PHP-коде? Два файла single.php? Объединение «глубины» с «include» в wp_list_pages () Как вы изменяете файлы CSS через панель администратора? Тип пользовательской публикации WordPress – показывать только определенные сообщения, которые имеют конкретный набор таксономии Отображать дочерние страницы настраиваемой родительской страницы типа отправки не может перетаскивать виджеты, так как wordpress 3.2.1 Миграция статистики из блога WordPress.com в самостоятельный блог WordPress.org Рекомендуемые разрешения файлов что лучше всего переместить следующий код в функцию Могу ли я запустить add_action-hook внутри функции, которая получает данные через wp_ajax?

Альтернатива использованию функции get_avatar?

Я использовал ручку WP для отображения авторских фото. Например, у моего single.php есть авторский слиз, который отображает авторский рис.

Я создал папку под названием author в моей папке theme / images. Основываясь на идентификаторе автора, я называю файл 1.jpg, 2.jpg и так далее.

Поэтому я называю это изображение как

<img src="<?php bloginfo('template_directory') ?>/images/authors/<?php the_author_ID()?>.jpg" alt="<?php the_author(); ?>"> 

Теперь я изменяю плагин, который отображает авторов на боковой панели. Однако этот плагин использует функцию get_avatar, которая выглядит следующим образом:

 /** * If show avatar option is checked, add get_avatar function to cache. */ if($jmetc_options['show_avatar'] == 1) { $jmevar['cache'] .= get_avatar($tc->comment_author_email, $jmetc_options['avatar_size']); } 

Может ли кто-нибудь посоветовать мне, как использовать / модифицировать get_avatar, чтобы использовать код по умолчанию, который я использую?

Solutions Collecting From Web of "Альтернатива использованию функции get_avatar?"

Функция get_avatar() применяет фильтр фильтра get_avatar , который вы можете использовать для изменения разметки аватара:

 return apply_filters('get_avatar', $avatar, $id_or_email, $size, $default, $alt); 

Я думаю, что это будет правильный способ подключиться к этому фильтру:

 function mytheme_get_avatar( $avatar ) { $avatar = '<img src="<' . get_template_directory_uri() . '/images/authors/' . get_the_author_ID() . '.jpg" alt="' . get_the_author() . '">'; return $avatar; } add_filter( 'get_avatar', 'mytheme_get_avatar' ); 

РЕДАКТИРОВАТЬ

ps хорошей альтернативой этому подходу может быть простой плагин локальных аватаров .

EDIT 2

Фильтр применяется с использованием add_filter() , а не apply_filters() . Это была опечатка с моей стороны; теперь исправлено!

ИЗМЕНИТЬ 3

Я не думаю, что это правильно:

PS: Просто уточнить .. Я заменил get_avatar($tc->comment_author_email, $jmetc_options['avatar_size']); с add_filter('get_avatar', $avatar, $id_or_email, $size, $default, $alt);

Во-первых, вы все еще вызываете get_avatar() в файле шаблона, передавая все те же параметры, что и предыдущие. add_filter() принадлежит functions.php .

Во-вторых, вы можете передать дополнительные параметры вашей функции фильтра; например:

 function mytheme_get_avatar( $avatar, $id_or_email, $size ) { $avatar = '<img src="<' . get_template_directory_uri() . '/images/authors/' . $id_or_email . '.jpg" alt="' . get_the_author() . '" width="' . $size . 'px" height="' . $size . 'px" />'; return $avatar; } add_filter( 'get_avatar', 'mytheme_get_avatar', 10, 3 );