Есть скрипт который создает кастомные поля пользователя в админке WordPress, они выводятся через function.php в шаблоне. Переношу в function.php плагина, не работает, почему так может быть, может там нужно как-то по другому?
// когда пользователь сам редактирует свой профиль
add_action( 'show_user_profile', 'true_show_profile_fields' );
// когда чей-то профиль редактируется админом например
add_action( 'edit_user_profile', 'true_show_profile_fields' );
function true_show_profile_fields( $user ) {
// выводим заголовок для наших полей
echo '<h3>Дополнительная информация</h3>';
// поля в профиле находятся в рамметке таблиц <table>
echo '<table class="form-table">';
// добавляем поле пол
// также можно и установить значение по умолчанию
$gender = ( $gender = get_the_author_meta( 'gender', $user->ID ) ) ? $gender : 'male';
echo '<tr><th><label for="gender">Пол</label></th>
<td><ul>
<li><label><input value="male" name="gender"' . checked( $gender, 'male', false ) . ' type="radio" /> мужской</label></li>
<li><label><input value="female" name="gender"' . checked( $gender, 'female', false ) . ' type="radio" /> женский</label></li>
<li><label><input value="other" name="gender"' . checked( $gender, 'other', false ) . ' type="radio" /> другое</label></li>
</ul></td>
</tr>';
echo '</table>';
}