0

ユーザーのWordPressプロファイルを更新するページを作成しました。このサイトはcimyuserの追加フィールドを使用し、ユーザープロファイルにいくつかのカスタムフィールドを追加します。このページはすべてのユーザーデータを取得し、フォームの適切なフィールドに入力します。ユーザーは必要な変更を加えてから、[送信]をクリックできます。

フォームが投稿されると、edit_user()が呼び出されます。余分なフィールドがすべて空であるというエラーが返されます。$ _POST変数をエコーアウトでき、それらはすべてそこにあります。名前は、cimy設定パネルでの名前と一致します。標準のWordPressフィールドで問題ありません。edit_user()以外のものに切り替える必要があるかどうかはわかりません。他のいくつかのメソッドを調べましたが、edit_user()よりも優れているものはありません。または、更新できるようにするために他に何かする必要があります。 cimy追加フィールド。

コードは次のとおりです。

if(!empty($_POST['action'])){
    require_once(ABSPATH . 'wp-admin/includes/user.php');
    require_once(ABSPATH . WPINC . '/registration.php');
    check_admin_referer('update-profile_' . $user_ID);
    $errors = edit_user($user_ID);
    echo $_POST['church'];
    if ( is_wp_error( $errors ) ) {
        foreach( $errors->get_error_messages() as $message )
        $errmsg .= "$message ";
    }
    if($errmsg == ''){
        do_action('personal_options_update', $user_id);
        $d_url = $_POST['dashboard_url'];
        wp_redirect( get_option("siteurl").'?page_id='.$post->ID.'&updated=true' );
    }
    else {
        $errmsg = '<div class="box-red">** ' . $errmsg . ' **</div>';
        $errcolor = 'style="background-color:#FFEBE8;border:1px solid #CC0000;"';
    }
}

いつものように、私は明らかな何かを見落としていると確信しています。

どんな考えでも大歓迎です。ありがとう。

4

1 に答える 1

0

私はそれを考え出した。プラグインは、フィールド名の前に cimy_uef_ を追加します。すべてが正しく機能したことを追加したら。

于 2012-08-09T19:15:30.657 に答える