كيف أقوم بإعادة توجيه عميل المستخدم إلى الصفحة التي كان فيها قبل تسجيل الدخول بنجاح؟

magento.stackexchange https://magento.stackexchange.com//questions/59780

  •  12-12-2019
  •  | 
  •  

سؤال

أنا أستخدم ماجنتو 1.4.1.1

يمكن فقط للعميل الذي قام بتسجيل الدخول الوصول إلى صفحتين من موقع الويب الخاص بي.لذلك، عندما يحاول عميل لم يقوم بتسجيل الدخول الوصول إلى الصفحة التي تحتاج إلى تسجيل الدخول، تتم إعادة توجيهه إلى صفحة تسجيل الدخول.باستخدام الكود التالي.

if(!$this->helper('customer')->isLoggedIn())
{
    Mage::app()->getFrontController()->getResponse()->setRedirect(Mage::getUrl('customer/account'));
}

بعد نجاح تسجيل الدخول، تتم إعادة توجيه العميل إلى لوحة حسابه (يتم فقدان موقع الصفحة السابقة).

هل هناك أي طريقة لجعل الماجنتو يعود إلى الصفحة التي كان فيها العميل بعد نجاح تسجيل الدخول؟

يعتبر

هل كانت مفيدة؟

المحلول

يمكنك إضافة هذا إلى صفحة يجب على العميل تسجيل الدخول: Mage :: GetModel ("العميل / الجلسة") -> setbeforeauthurl ([رابط صفحتك])

نصائح أخرى

اذهب إلى النظام->التكوين->تكوين العميل->خيارات تسجيل الدخول وتعيين القيمة ل Redirect Customer to Account Dashboard after Logging in ل No.

يوجد (على الأقل) خياران للتحكم في هدف إعادة التوجيه بعد تسجيل دخول العميل:

  1. تعيين after_auth_url الملكية في جلسة العميل.
  2. بالاشتراك مع ما سبق اقتراح من ماريوس, ، أضف referer معلمة الطلب لطلب تسجيل الدخول.

يرى Mage_Customer_AccountController::_loginPostRedirect().

وتحاول وضعه في ملف وحدة التحكم "التطبيق / رمز / محلي / ماجيك / العميل / المراقبين / AccountController.php" في وظيفة "Loginpostaction" قبل "IF ($ هذا-> GetRequest () -> ISPOST()) {"

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى magento.stackexchange
scroll top