通过php在wordpress user-new.php中添加字段

时间:2019-05-31 13:05:56

标签: php wordpress

在Users.php页面上,我需要一个自动过滤器来仅列出一种类型的用户,而不必选择打开页面的准确过滤器,并且已经具有该过滤器

1 个答案:

答案 0 :(得分:0)

在函数文件中尝试以下操作:

创建一个自定义字段“公司名称”。它显示在两个“添加/更新”用户屏幕上。 钩住“ user_new_form”,将在“添加新用户”屏幕上显示该字段。

function custom_user_profile_fields($user){
    if(is_object($user))
        $company = esc_attr( get_the_author_meta( 'company', $user->ID ) );
    else
        $company = null;
    ?>
    <h3>Extra profile information</h3>
    <table class="form-table">
        <tr>
            <th><label for="company">Company Name</label></th>
            <td>
                <input type="text" class="regular-text" name="company" value="<?php echo $company; ?>" id="company" /><br />
                <span class="description">Where are you?</span>
            </td>
        </tr>
    </table>
<?php
}
add_action( 'show_user_profile', 'custom_user_profile_fields' );
add_action( 'edit_user_profile', 'custom_user_profile_fields' );
add_action( "user_new_form", "custom_user_profile_fields" );

将自定义字段保存在数据库中:

function save_custom_user_profile_fields($user_id){
    # again do this only if you can
    if(!current_user_can('manage_options'))
        return false;

    # save my custom field
    update_user_meta($user_id, 'company', $_POST['company']);
}
add_action('user_register', 'save_custom_user_profile_fields');
add_action('profile_update', 'save_custom_user_profile_fields');