5

ログインをプロセスにできるだけシームレスに統合するフォームを作成しようとしています。

私はMage::helper('customer')->getLoginPostUrl()現在、ログインフォームに使用しています。もっと良いものがあれば、私はすべての耳に耳を傾けています。それは機能しますが、ユーザーダッシュボードに行き着きます。

関数を調べて探しまし if($this->_getRequest()->getParam(self::REFERER_QUERY_PARAM_NAME)){ たが、関数が読み取る方法でパラメーターを与える方法がわかりません。

使用するとリファラー自体が追加されることに気付いたMage::helper('customer')->getLoginUrl()ので、トレースして、エンコードされたリファラーをURLに追加する方法を見つけたところ、これになりました

<?php echo Mage::helper('customer')->getLoginPostUrl(); ?>referer/<?php echo Mage::helper('core')->urlEncode($this->getUrl("frontname/controller/function")); ?>

次のようなURLが表示されます

http://www.mysite.com/customer/account/loginPost/referer/aHR0cDovL3J5YW4uZGV2L3VzL2Zyb250bmFtZS9jb250cm9sbGVyL2Z1bmN0aW9uLw,,/

これは機能しますが、もっと良い方法が必要だと思います。誰でも何か考えがありますか?

そうでない場合...他の誰かが同じものを探している場合に備えて、それは私にとってはうまくいきます。

4

4 に答える 4

2

私も同じ問題を抱えていました。構成の設定により、顧客がダッシュボードにリダイレクトされています。に行く

システム > 構成 > 顧客 > 顧客構成 > ログイン オプション

「ログイン後に顧客をアカウント ダッシュボードにリダイレクトする」を「いいえ」に変更します。Magento はそのリファラー パラメーターのリッスンを開始し、顧客が [ログイン] をクリックする前のページに戻ります。

これは古いスレッドであり、おそらく手遅れになることはわかっていますが、この質問は問題にランクされており、他の誰かを助けるかもしれません.

于 2013-03-07T14:14:07.810 に答える