Главная
Wordpress
Как добавить новое поле в профиль пользователя WordPress
  • 162
  • 0
  • Рубрика: Wordpress

Как добавить новое поле в профиль пользователя WordPress

Как добавить новое поле в профиль пользователя WordPress

Доброго времени суток. 🙂

Сегодня опять будем работать с WordPress, а вернее дорабатывать его стандартный функционал. Если конкретно, то я покажу как добавить одно или несколько новых полей в профиль пользователя. У WordPress есть свои стандартные поля, но иногда их не хватает для некоторых проектов. В одном из моих последних заказов, для авторов статей, нужно было добавить их должность, чтобы потом вывести ее на странице автора.

Осуществить задуманное мы сможем с помощью фильтра user_contactmethods. Вам нужно просто добавить функцию в пользовательский файл функций - function.php. Если вы легко работаете с кодом WordPress, то добавляйте новый код, куда угодно, если же нет, то в самый конец перед закрывающим тегом php - ?>, если его нет, то просто в самый конец.

// Поле должность
add_filter('user_contactmethods', 'ved_user_contactmethods');
	function ved_user_contactmethods($user_contactmethods){
	$user_contactmethods['position_user'] = 'Должность';
	return $user_contactmethods;
}

По сути, все что вам нужно, в третей строке. Именно она и создает новое поле. В ней указан ключ - position_user и название Должность, которое выведется в настройках профиля. В итоге, на странице профиля вы увидите такое поле:

Новое поле в профиле

Просто добавить поле на страницу профиля не достаточно, нужно еще и вывести его на сайте. Делается это на странице автора, в файле author.php, ну или там, где у вас выводится информация об авторе. В месте где хотите видеть строку с данными поля, добавляете такую строку:

Данная строка добавляется только внутри цикла или на странице автора. В общем там, где есть смысл выводить информацию об авторе записи.

<?php the_author_meta('position_user'); ?>

Как видите, указывается ключ position_user и с помощью the_author_meta выведутся данные.

Таким самым образом, можно добавить несколько полей, код по сути тот же самый, просто добавляете строки с ключами и названиями, ну и вызываете потом данные в нужном месте.

add_filter('user_contactmethods', 'ved_user_contactmethods');
function ved_user_contactmethods($user_contactmethods){
  $user_contactmethods['position_user'] = 'Должность';
  $user_contactmethods['hobby_user'] = 'Хобби';
  return $user_contactmethods;
}

Как видите мы еще добавили и поле Хобби, с ключом hobby_user. Ключи и название можете задавать какие хотите, главное, чтобы они не были одинаковыми в разных полях, иначе будет ошибка. Ну и выводим так же, плюч, можете добавить комментарий:

<p>Должность: <?php the_author_meta('position_user'); ?></p>
<p>Хобби: <?php the_author_meta('hobby_user'); ?></p>

В данных примерах функции заключены в теги PHP для вставки в HTML код. Если в вашей теме везде используется PHP код, то можно без тегов, но используя правила PHP. Например так:

echo '<p>Должность: ';
echo the_author_meta('position_user');
echo '</p>';
echo '<p>Хобби: ';
echo the_author_meta('hobby_user');
echo '</p>';

Как видите, нет ничего сложного. С помощью данного метода, вы легко добавите нужную информацию, про авторов блога.

На этом все, спасибо за внимание. 🙂




Если Вам был полезным мой труд, можете поддержать сайт :)


Оцените статью
  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
Проголосовало: 2, в среднем: 5 из 5

Добавить комментарий

Заполните поля ниже. Ваш e-mail не будет опубликован. Обязательные поля помечены *

Уважаемые пользователи! При добавлении комментариев на сайт Вам следует соблюдать правила указанные под формой отправки комментариев.

Соблюдайте добавления комментариев

Это не спам *

Нажмите, чтобы добавить код в комментарий
X

Привет дорогой друг

У тебя установлено расширение AdBlock или подобное. Добавь мой сайт в белый список, и тем самым внесешь свой вклад в его развитие. Инструкция как отключить AdBlock Хочу такое же окошко