Более подробно о расширении пользовательских профилей уже было написано ранее. Сейчас лишь рассмотрим частные случаи.
Добавление полей в блок «Контакты»
Так как страницу вконтакте или скайп (а также номер сотового) в профиле нужно отображать под вкладкой «Контакты» а не под «Дополнительная информация» то лучше всего применить следующую функцию:
function true_add_contacts( $contactmethods ) { $contactmethods['vk'] = 'Ваша страница вконтакте'; $contactmethods['mobile'] = 'Номер сотового'; $contactmethods['skype'] = 'Скайп'; return $contactmethods; } add_filter('user_contactmethods', 'true_add_contacts', 10, 1); |
И это всё!
Да, действительно, этот способ довольно простой, так почему им не воспользоваться, чтобы добавить несколько полей для заполнения контактов в профиль?
Удаление стандартных полей из блока «Контакты»
И сразу же бросаются в глаза стандартные вордпрессовские поля, я имею ввиду AIM, Yahoo IM, Jabber / Google Talk.
Почему-то мне кажется, что мало кто их использует, по крайней мере в нашей стране, поэтому избавимся от них:
function true_hide_contacts( $contactmethods ) { unset($contactmethods['aim']); unset($contactmethods['jabber']); unset($contactmethods['yim']); return $contactmethods; } add_filter('user_contactmethods', 'true_hide_contacts', 10, 1); |
Удаление блока «Персональные настройки»
Также в профиле можно удалить блок с персональными настройками, то есть возможность выбора цветовой схемы и прочее. Это несколько шаманский способ удаления (а точнее скрытия) данного блока, если вы знаете способ получше, пожалуйста, поделитесь им в комментариях.
function true_remove_personal_options(){ echo "n" . '<script type="text/javascript"> jQuery(document).ready(function($) { $('form#your-profile > h3:first').hide(); $('form#your-profile > table:first').hide(); $('form#your-profile').show(); }); </script>' . "n"; } add_action('admin_head', 'true_remove_personal_options'); |
Источник: misha.blog