Иногда возникает необходимость изменить отображаемое имя автора записей в WordPress без установки дополнительных плагинов. Это может быть полезно, если вы хотите скрыть настоящее имя пользователя, указать псевдоним или просто сделать сайт более персонализированным. В этой статье я расскажу, как можно изменить имя автора на сайте программно и через админку, а также приведу примеры кода для гибкой настройки.
Почему стоит менять имя автора без плагинов
Плагины удобны, но они увеличивают нагрузку на сайт и могут создавать уязвимости. Если задача простая — заменить или скрыть имя автора — лучше обойтись встроенными средствами и минимальным кодом. Это гарантирует, что сайт будет работать быстрее и безопаснее.
Кроме того, изменение имени автора напрямую в базе или с помощью кода позволяет настроить отображение более гибко, например, использовать псевдонимы, сокращённые имена или вообще задавать кастомные значения для разных записей.
Как изменить имя автора через админку WordPress
Первый и самый простой способ — изменить данные пользователя в разделе «Пользователи».
- Перейдите в админке WordPress в меню Пользователи > Ваш профиль.
- Найдите поля
Имя,ФамилияиПсевдоним. - Заполните поле
Псевдонимтем именем, которое хотите отображать на сайте. - Внизу выберите в выпадающем списке
Отображать имя публично какзначениеПсевдонимили другое на ваш выбор. - Нажмите кнопку Обновить профиль.
Таким образом, имя автора в метаданных записи изменится, и на сайте будет отображаться выбранный псевдоним.
Изменение имени автора через код в functions.php
Если нужно более гибкое решение, например, менять имя автора на лету или по условию, можно добавить функцию в файл functions.php вашей темы или в отдельный плагин.
Пример функции, которая заменяет отображаемое имя автора в записях на кастомное:
function wphide_change_author_name($display_name, $user_id) {
// Например, для пользователя с ID 2 меняем имя
if ($user_id == 2) {
return 'Редактор сайта';
}
// Для остальных возвращаем стандартное имя
return $display_name;
}
add_filter('the_author', 'wphide_change_author_name', 10, 2);Здесь мы используем фильтр the_author, который отвечает за отображение имени автора. Функция проверяет ID автора и меняет имя, если условие выполнено.
Расширение функции под несколько пользователей
Можно расширить логику, например, хранить имена в массиве для разных ID:
function wphide_change_author_name($display_name, $user_id) {
$custom_names = [
2 => 'Редактор сайта',
3 => 'Гость блогер',
5 => 'Администратор'
];
if (isset($custom_names[$user_id])) {
return $custom_names[$user_id];
}
return $display_name;
}
add_filter('the_author', 'wphide_change_author_name', 10, 2);Изменение автора в RSS-ленте и других местах
Фильтр the_author регулирует имя автора в контенте. Но если вы используете RSS или другие места, где выводится имя автора, стоит дополнительно обработать фильтр get_the_author_display_name:
function wphide_filter_author_display_name($display_name, $user) {
$custom_names = [
'user_login_1' => 'Псевдоним 1',
'user_login_2' => 'Псевдоним 2'
];
if (isset($custom_names[$user->user_login])) {
return $custom_names[$user->user_login];
}
return $display_name;
}
add_filter('get_the_author_display_name', 'wphide_filter_author_display_name', 10, 2);Этот фильтр принимает объект пользователя, что позволяет работать с логином и другими свойствами.
Скрытие имени автора для всех или определённых записей
Иногда нужно полностью убрать имя автора, например, для конфиденциальности или уникального дизайна. Для этого можно вернуть пустую строку через фильтр:
function wphide_hide_author_name() {
return '';
}
add_filter('the_author', 'wphide_hide_author_name');Если нужно скрыть имя только на определённых типах записей или условиях, добавьте проверку внутри функции.
Плагины, которые могут помочь с управлением именами авторов
Если всё же хотите использовать готовые решения, можно рассмотреть плагины, которые расширяют возможности управления авторами:
- Co-Authors Plus — позволяет назначать несколько авторов записи и менять отображаемые имена.
- Expert Review — плагин для расширенного управления контентом и авторами с возможностью кастомизации.
Выводы и рекомендации
Изменение имени автора в WordPress без плагинов — задача решаемая с помощью стандартных возможностей и фильтров. Для простого переименования достаточно настроить профиль пользователя в админке. Для более сложных сценариев лучше использовать фильтры the_author и get_the_author_display_name с кастомным кодом в functions.php.
Такой подход позволит скрыть настоящие имена, использовать псевдонимы и улучшить безопасность сайта без дополнительных нагрузок.