Domanda

Sto personalizzando la pagina di visualizzazione del prodotto e devo mostrare il nome dell'utente. Come posso accedere alle informazioni sull'account dell'utente corrente (se ha effettuato l'accesso) per ottenere il nome, ecc.?

È stato utile?

Soluzione

Trovato in " app / code / core / Mage / Page / Block / Html / Header.php " ;:

public function getWelcome()
{
    if (empty($this->_data['welcome'])) {
        if (Mage::app()->isInstalled() && Mage::getSingleton('customer/session')->isLoggedIn()) {
            $this->_data['welcome'] = $this->__('Welcome, %s!', Mage::getSingleton('customer/session')->getCustomer()->getName());
        } else {
            $this->_data['welcome'] = Mage::getStoreConfig('design/header/welcome');
        }
    }

    return $this->_data['welcome'];
}

Quindi sembra che Mage::getSingleton('customer/session')->getCustomer() otterrà il tuo attuale cliente connesso;)

Per ottenere l'amministratore attualmente connesso:

Mage::getSingleton('admin/session')->getUser();

Altri suggerimenti

Dai un'occhiata alla classe helper: Mage_Customer_Helper_Data

Per ottenere semplicemente il nome del cliente, puoi scrivere il seguente codice: -

$customerName = Mage::helper('customer')->getCustomerName();

Per ulteriori informazioni sull'ID entità del cliente, ID sito Web, e-mail, ecc. è possibile utilizzare la funzione getCustomer . Il codice seguente mostra cosa puoi ottenere da esso: -

echo "<pre>"; print_r(Mage::helper('customer')->getCustomer()->getData()); echo "</pre>";

Dalla classe helper, puoi anche ottenere informazioni sull'URL di accesso del cliente, sull'URL di registrazione, sull'URL di disconnessione, ecc.

Dalla funzione isLoggedIn nella classe helper, puoi anche verificare se un cliente ha effettuato l'accesso o meno.

È possibile ottenere il nome cliente di accesso corrente dalla sessione nel modo seguente:

$customer = Mage::getSingleton('customer/session')->getCustomer();

In questo modo verranno restituiti i dettagli del cliente del cliente con accesso corrente.

Ora puoi ottenere il nome del cliente usando getName()

echo $customer->getName();

per Email usa questo codice

$email=$this->__('Welcome, %s!', Mage::getSingleton('customer/session')->getCustomer()->getEmail());

echo $email;
$customer = Mage::getSingleton('customer/session')->getCustomer();
    $customerAddressId = Mage::getSingleton('customer/session')->getCustomer()->getDefaultBilling();
    $address = Mage::getModel('customer/address')->load($customerAddressId);
    $fullname = $customer->getName();
    $firstname = $customer->getFirstname();
    $lastname = $customer->getLastname();
    $email = $customer->getEmail();
    $taxvat = $customer->getTaxvat();
    $tele = $customer->getTelephone();
    $telephone = $address->getTelephone();
    $street = $address->getStreet();
    $City = $address->getCity();
    $region = $address->getRegion();
    $postcode = $address->getPostcode();

Ottieni l'indirizzo di fatturazione predefinito del cliente

Per username è lo stesso con alcune modifiche:

$user=$this->__('Welcome, %s!', Mage::getSingleton('customer/session')->getCustomer()->getName());
echo $user;

Il seguente modo è possibile accedere a tutte le informazioni dall'utente registrato.

$customer_data=Mage::getSingleton('customer/session')->getCustomer();


echo "<pre>" print_r($customer_data);

In questo modo:

$email = Mage::getSingleton('customer/session')->getCustomer()->getEmail();
echo $email;

Semplicemente,

$current_customer = $this->_getSession()->getCustomer();

Questo restituisce l'oggetto cliente, quindi puoi ottenere tutti i dettagli da questo oggetto cliente.

Non lo so dalla cima della mia testa, ma cerca nel file che mostra il nome dell'utente, ecc. nell'intestazione della pagina dopo che l'utente ha effettuato l'accesso. Potrebbe essere utile se hai attivato i suggerimenti sul modello (vedi questo tutorial .

Quando trovi la linea come "Hello <? //code for showing username?>", copia quella linea e mostrala dove devi

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top