Как с помощью плагина добавить пользовательские поля в профиль пользователя в WordPress

Дорогие друзья,

WordPress, безусловно, очень удобная и простая платформа для создания веб-сайтов, к тому же она обеспечивает простой способ расширить / настроить существующий базовый функционал с помощью плагинов.

При работе с системой у нас часто возникает необходимость создать некоторые дополнительные поля в профилях пользователей. WordPress имеет встроенные обращения (хуки), с помощью которых мы можем выводить дополнительную информацию при отображении профиля и выполнять некоторые другие действия.

В этой статье я расскажу, как мы можем добавить дополнительные поля в профиль пользователя и сохранить эти данные в БД.

Давайте создадим плагин и назовем его «UserFBAddress». С его с помощью в профиль пользователя будет добавляться дополнительное поле «Аккаунт Facebook».

Для этого мы будем использовать следующие два обращения (хука):

  • show_user_profile;
  • personal_options_update

Обращение «show_user_profile» вызывается, когда отображается страница профиля. “personal_options_update” — когда пользователь сохраняет данные в профиле.

Помимо этого, мы будем использовать две следующие функции:

  • get_user_meta ( );
  • update_user_meta ( )

Функция “get_user_meta()” используется для того, чтобы получить с использованием ключа любые данные, связанные с пользователем. Функция “update_user_meta()” используется для сохранения с использованием ключа данных, связанных с пользователем.

Вставьте в файл плагина приведенный ниже код и активируйте плагин:

add_action('show_user_profile', 'UserFBAddress_add');
add_action('personal_options_update', 'UserFBAddress_update');

function UserFBAddress_add(){ 
	global $user_ID;
	$fb_add = get_user_meta($user_ID, "user_fb_txt");
	if(is_array($fb_add))
		$fbadd = $fb_add[0];
	?>

Теперь давайте разберемся в самом коде:

  • Первое, что мы делаем, это указываем WordPress вызвать функции, когда запускаются обращения. Это делается с помощью add_action ( );
  • Когда запускается обращение “show_user_profile”, WP вызывает UserFBAddress_add ( ) также и для “personal_options_update”, он в свою очередь вызывает “UserFBAddress_update()”;
  • После этого задаем функцию. UserFBAddress_add() выводит пользователю дополнительное поле в форме ввода данных;
  • Функция UserFBAddress_update() обновляет значение ключа, связанного с пользователем.

После того, как плагин будет активирован, в нижней части страницы профиля пользователя вы увидите новое поле «Аккаунт Facebook». Теперь вы можете добавлять в профили столько полей, сколько вам потребуется. Для этого вы можете использовать описанные выше функции.

На рисунке ниже показан сам плагин в действии:

плагин в действии

Перевод статьи «How to Add Custom Fields to User Profile in WordPress Using Plugins» был подготовлен дружной командой проекта Сайтостроение от А до Я.