Saya ingin mengarahkan pengguna ke halaman "Beranda" alih-alih halaman "Akun Saya" setelah login, dan saya berhasil mencapai ini dengan memanfaatkan
<customer_login>
peristiwa.
Tetapi saya juga dialihkan ke beranda sementara saya masuk dari checkout di tempat yang tidak saya inginkan.
Di bawah ini adalah fungsi pengamat saya
public function setRedirectOnLogin(){ $session = Mage::getSingleton('customer/session'); if (strpos($session->getBeforeAuthUrl(), 'checkout') === false) $session->setAfterAuthUrl(Mage::getBaseUrl()); $session->setBeforeAuthUrl(''); }
Bisakah ada yang memandu bagaimana saya bisa menghentikan pengguna mengalihkannya ke beranda setelah login dari checkout di tempat?
Terima kasih.
magento-1.8
customer
login
Solusi Perangkat Lunak Trimantra
sumber
sumber
Anda harus terlebih dahulu mengubah konfigurasi pelanggan Anda:
Kemudian gunakan
referrer
param pada formulir. Contohnyasumber
coba ini
sumber
Untuk meringkas semua komentar di sini:
Ambil config.xml dan daftarkan acara untuk customer_login di area frontend seperti ini
Setelah itu Anda harus menerapkan metode pengamat untuk mengubah url "setelah auth" dari sesi pelanggan. Variabel ini akan digunakan dalam AccountController pelanggan untuk memeriksa di mana harus mengarahkan setelah login.
sumber
Anda dapat menggunakan
Mage::helper('core/http')->getHttpReferer()
dalam kondisi Anda sudah harus melihat apakah perujuk adalah halaman checkout Anda dan bertindak sebagai konsekuensinya.sumber