2011-06-21 4 views
2

すでにOpenIDを使用してユーザーを認証していて、Magentoにリダイレクトされている場合、どのように自動的にログインするのですか?私が持っているのは彼らの電子メールだけです。私は何が欠けていますか?OpenIDを使用してMagentoにログインする

ありがとうございます。

+0

ご了承ください。自分のモジュールを作成してOpen IDでログインする必要がありますか? – Zyava

+0

はい、自分のモジュールを作成しています。 –

+0

これで、ログイン後にユーザーがオープンIDプロバイダによってリダイレクトされるコールバックページがあります。このページには、オープンIDプロバイダのユーザーメールと認証トークンがあります。認証トークンとユーザーIDの2つの列を持つ追加の表が必要です。あなたのモジュールはこのテーブルを調べ、そこにトークンが見つかったらユーザをログインさせ、そうでなければ新しい顧客を作成します。 Mage_Customer_Model_Customerモデルを使用して顧客にログインして新規顧客を作成する方法を知っていますか? – Zyava

答えて

1

初期の大きな質問ではなく、お客様にログインする方法は質問にお答えします。コメントにはコードの書式がないので、ここに書き込むことにしました。

// $login here is customer email 
$customer = Mage::getModel('customer/customer') 
    ->setWebsiteId(Mage::app()->getStore()->getWebsiteId()) 
    ->loadByEmail($login); 

Mage::getSingleton('customer/session')->setCustomerAsLoggedIn($customer) 
    ->renewSession(); 

// now redirect user to home page or do something else what you need 
+0

は完璧に機能しました!どうもありがとうございます!あなたは私の仕事の時間を節約しました! –

関連する問題