2016-08-31 2 views
0

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

Но я немного застрял, получив его правильно. Может кто-нибудь объяснить, как это сделать?

+0

Можете ли вы показать нам, что у вас уже есть, и/или дать пример того, чего вы пытаетесь достичь? –

+0

Hello maarten, У меня ничего не было, я повсюду гугл, но не могу найти его. То, что я пытаюсь достичь, это: Когда я регистрирую новую учетную запись (учетную запись ученика/учетную запись учителя), я хочу, чтобы она вставляла данные в базу данных, поэтому я могу использовать ее позже на передней стороне. Или это возможно, если просто сохранить его на странице профиля? –

+0

Я согласен с @MaartenBicknese, если вы хотите получить помощь по StackOverflow, вам нужно дать нам что-то для работы, что называется MCVE: http://stackoverflow.com/help/mcve –

ответ

0

Я пытаюсь показать вам пример. Предположим, я хочу создать новую поданную как Facebook-адрес для каждого пользователя. Так ниже код

/** 
* Creating custom field for each user 
*/ 
function prefix_add_area_field($user) { 

    ?> 
     <h3>User Facebook URL</h3> 

     <table class="form-table"> 
      <tr> 
       <th><label for="area_id">Facebook URL</label></th> 
       <td><input type="text" name="facebook_url" value="<?php echo esc_attr(get_user_meta($user->ID, 'facebook_url', true)); ?>" class="regular-text" /></td> 
      </tr> 
     </table> 
    <?php 
} 
add_action('show_user_profile', 'prefix_add_area_field'); 
add_action('edit_user_profile', 'prefix_add_area_field'); 

/** 
* Saving the user field from admin panel. 
*/ 
function prefix_save_user_fields($user_id) { 

    if (!current_user_can('edit_user', $user_id)) 
     return false; 
    //save text field 
    update_usermeta($user_id, 'facebook_url', $_POST['facebook_url']); 
} 

add_action('personal_options_update', 'prefix_save_user_fields'); 
add_action('edit_user_profile_update', 'prefix_save_user_fields'); 

Если вы хотите отобразить значение настраиваемого поля, т.е. Facebook URL в веб-интерфейсе, то вы можете использовать get_usermeta ($ user_id, «facebook_url», правда) в файле темы.

Thanks

+0

спасибо за ввод! отображается в профиле, но он не отображается в регистрационной форме пользователя. каким-либо образом добавить это? –

+0

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

+0

Я использую свежую чистую установку Wordpress, с моим собственным подключаемым модулем, и ни с кем другим. –

Смежные вопросы