[WordPress] 外部データベースからの情報を使用してログインをワードプレスの web サイトにユーザー アカウントを作成します。

スポンサーリンク

Question

、独自のユーザー、MySQL データベースに PHP のウェブサイトをあります。そのウェブサイトは「生きている」未定義の時間に作成する新しいユーザー アカウントを続けます

今これら 2 の特殊性と、WP を使用して別の web サイトを作成する必要があります:

  • いくつかのウェブサイトのセクションは、ユーザーの web サイトにログインしたときのみアクセスできます
    • いくつか の最初の web サイトで使用されるユーザー テーブル内のユーザーは、この WP のウェブサイトにアクセスすることができますユーザー。すべてではない それらのユーザーが持っているので、これは重要です、その特定の値を持つテーブルのフィールドの 1 つを持っているものだけにアクセスします

    について考えたこれを達成する 最初の方法 は、ワードプレスのそれらのための独自のユーザーにユーザー アカウントの任意の並べ替えを作成することがなくすべての処理はカスタム ログイン関数を作成します。私は WP の開発者ではないが、私はいくつかの研究で私はそれを行う方法を見つけることができると思います

    そのオプションに問題が私は、フォーラムおよび多分他の機能を実際にはコメント、投稿、等を追跡するために WP のユーザー アカウントが必要になりますを含む計画

    の助言を追求したいと思いますなぜは すべてこれにアプローチする方法です。実装は、理想的には、必要がありますが:

    • ユーザーは、サイトの特定のセクションにアクセスするときにログインを要求する
    • チェック ユーザー
    • ログイン時に、初めての場合を作成しますそのユーザーのアカウント、ユーザーが他のウェブサイトで情報を使用して WP の、が (変更プロファイル情報、パスワード、等)、典型的なアカウント管理機能をブロックして

    こといくつかのコーディングでそれをすべて行うことができます、私はちょうどを知っている知らない非常にワードプレスに関するすべてのことはあまりにも複雑であるかどうかを知っていないので。

    心で持っている 葯オプション はオリジナルのウェブサイトでアカウントを作成すると、「合法的な」方法で (別の web サイトから WP のアカウントを作成する) ことも可能であるかどうかを知っていないが wp を採用の権利でユーザー アカウントを作成すること

    このトピックで何かアドバイスは本当に感謝

    答え

    アカウントを作成する、ワードプレスにワードプレスをあなたの古いサイトからの情報を押すことによって

    1 つのソリューションです。トリガー (ワードプレスのユーザーを作成する必要がありますを決定する際の時間の瞬間) があると確信のワードプレスのサイトでこのようなユーザーが作成されます新しい php ファイルを作成する必要がありますそのトリガー、火災、そのためのワードプレスのスクリプトにユーザー情報を送信あなたのウェブサイトを持っている必要があります、:

    あなたの PHP のウェブサイトそれはあなたのワードプレスのウェブサイトでアカウントを持っているすべての理由を確認するユーザーを決定します。ようにそれは、wget または (まっすぐ進むソリューション) のためのカールにワードプレスをパラメーターとして渡すような多分何かする必要があるすべての情報で

    yourWPwebsite.com/createUser.php?username=&email=&...

    あなたのワードプレスの web サイトのルートに

    createUser.php

    ファイルを作成し (あなたがセットアップによって .htaccess を変更する必要がありますがセットアップのほとんどで動作するはずです)

    file(createUser.php) まず休閑の wp-load.php を含むでワードプレスを含めること:

    require( 'wp-load.php' ); //if you put this script in another place then root you need to make sure you change the path for this file.
    

    その後機能、ソースがないかどうかと認証 404 へのリダイレクトまたはホームページまたはものは何でもあなたのメッセージ セキュリティとして私いたアドバイスを他のサイトの ip アドレスからのみこのビューを受け入れるか、何らかの情報のソースを認証するためにトークンを含めるようにしたい、(場合がありますそれらのいくつかのクリーニングを行う) get 変数を読み取る任意のワードプレスを使用することができます

    休閑 wp 関数を使用してユーザーを作成します。:

    [][1]

    使用可能性がありますコードよう:

    $user_id = username_exists( $user_name );
    if ( !$user_id and email_exists($user_email) == false ) {
        $random_password = wp_generate_password( $length=12, $include_standard_special_chars=false );
        $user_id = wp_create_user( $user_name, $random_password, $user_email );
    } else {
        $random_password = __('User already exists.  Password inherited.');
    }
    

    役割管理/編集プラグインを追加および作成することができます、特定の役割を持っているユーザーの場合、新しい役割しその役割既定値として設定また上記後休閑のコードを追加する必要があるユーザーの役割を強制する場合:

    $user_id = wp_update_user( array( 'ID' => $user_id, 'role' => "DesiredRoleHere" ) );
    

    ユーザー管理プラグインを使用してプロファイルのユーザーの権限を削除することができます、またものの他の (多く) のようなプラグインをチェック マルチサイトユーザー管理 (他の人より良いかもしれない) アイデアを得るためにそれについてはユーザーが設定したパスワードであなたのワードプレスのウェブサイト上のアカウントを持っているし、ユーザーを認証する場合と同様の手順を取ることができますが、認証スクリプトは

    [wp_authenticate][3]

    を呼び出すし、ようなスクリプトがある:

     $logging = wp_authenticate ($username, $password);
     //then redirect to the page you want to redirect users when they log in
    

    コーディングの多くではないが、まったく制限がある各ステップのある確認するそれに取得する必要があります

    別の解決策は WP API のような API を使用するかもしれないがそれを使用していないと私は、ユーザーを認証し、わからない希望 wp ページをリダイレクトする何ができるかわからない…

    http://stackoverflow.com/questions/27286567/create-user-account-in-wordpress-website-on-login-using-info-from-external-datab

    スポンサーリンク

    Leave a Reply