Başarılı giriş yaptıktan sonra müşteri verilerini gözlemciden nasıl alabilirim?


12

Gözlemci dosyam olan özel bir modül yaptım. Giriş yapmış kullanıcıyla ilgili tüm bilgileri görüntülemem gerekiyor.

Yanıtlar:


16

Etkinliği kullanın customer_login:

<customer_login>
    <observers>
        <yourobservername>
            <type>model</type>
            <class>yourmodule/path_to_class</class>
            <method>customerLogin</method>
        </yourobservername>
    </observers>
</customer_login>

Gözlemci sınıfınız şöyle görünecektir:

class YourCompany_YourModule_Model_Observer
{
    public function customerLogin($observer)
    {
        $customer = $observer->getCustomer();
    }
}

1
Bunu yaptıktan sonra getCustomer null döndürür.
— user2656802

Düzeltmeye bakın. Şerefe.
— philwinkle

Heyy .. Ben magento çok yeniyim.Ayrıca aynı şeyi yapmak istiyorum.Bana dosya yapısında bu kodu nereye koymak zorunda söyleyebilir misiniz?
— Mutlu

Kullanıcı yanlış şifre giriş yaparken giriş eylemi önce istiyorum.
— ravi patel

@ravipatel yeni bir soru sor
— philwinkle

1

Bunu dene

    if($customer = Mage::getSingleton('customer/session')->isLoggedIn()) {
$customer =  Mage::getSingleton('customer/session')->getCustomer();
       $customerData = Mage::getModel('customer/customer')->load($customer->getId())->getData();
       //for firstname
       $customerFirstName = $customerData['firstname'];
    }

2
Mage::getSingleton('customer/session')->getCustomer()ayrıntılarını almak için yeterliyse, neden müşteri örneğini tekrar yükleyelim?
— Rajeev K Tomy

Evet, zorunlu değildir. Ancak kod akışına göre düzenlenmiş $ customer -> getFirstname () de çalışacaktır.
— Vivek Khandelwal
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.