2009-07-08 15 views
9

Web sitemin başka bir bölümünde Magento müşteri oturumuna erişmeye çalışıyorum.Magento kullanıcı oturumuna Magento dışından nasıl erişilir?

domain.com/shop/ <- Magento 
domain.com/test.php 

dükkan kendisi ancak bir müşteri kaydedilir eğer test.php içinde belirlemeye çalışırken im, bir cazibe gibi çalışır, bu yüzden onun arabası bir bağlantı ile onun adını görüntüleyebilir. Bugüne kadar test.php ait

İçindekiler:

<?php 
require_once dirname(__FILE__).'/shop/app/Mage.php'; 
umask(0); 
Mage::app('default'); 
Mage::getSingleton('core/session', array('name' => 'frontend')); 
var_dump(Mage::getSingleton('customer/session')->isLoggedIn()); 
?> 

ben bool (false) almaya devam döndü. Domain.com/shop/ adresinden Magento'ya giriş yaptım, dolayısıyla "true" bekleniyor.

Bir şey unutuyor muyum?

+0

> "İstisna: Warning: include (DoppelGangerView.php) ......" Benim tahminim bir şekilde dosya DoppelGangerView.php bulamıyorum olurdu .. - Onun geçerli dizinde bulunmayan .. - onun include_path içinde bulunmuyor –

cevap

14

Magento'nun belirlediği çerez yolunu kontrol etmenizi tavsiye ederim. Büyük olasılıkla, /shop olarak ayarlanmıştır, bu nedenle çerez sizin dosyanıza erişemeyecektir.

Sen Magento System -> Configuration -> Web (under the General heading) -> Session cookie management

+0

Şimdi onu ayarladım ve bu mükemmel çalışıyor! Teşekkürler. –

+0

Neden bu joomla ile çalışmıyor, çalıştığı ancak joomla ile çalışmayan ayrı bir sayfada test ettim, her zaman bool (false) –

+1

@Positive döndürdü, çünkü bu MAGENTO sorusu MAGENTO ile ilgili değil, çünkü joomla. – Benubird

0

o ver Magento üzerinde confuguration-> web altında altında bulunan denetim masasından kendi çerez ayarlamaya kullandığı yolunu değiştirebilir. 1.12.1.1

0

Aynı konu beni deli ediyordu. Son öğe çözülene kadar aşağıdakilerle çalıştım:

  • Doğru Mage mağazası kimliği (geçerli mağaza) ayarlandı mı?
  • Magento ile aynı oturum yolunu kullanıyor musunuz?
  • Çerez amacıyla aynı (alt) etki alanını kullanıyor musunuz?
  • Hem içeride hem de dışarıda HTTP veya HTTPS kullanıyor musunuz?

sen her şeyden işaretlediyseniz, böyle kendi ilk on bir çekirdek "ön uç" oturumu başlatmak emin olun:

// Initialise the core "frontend" session 
Mage::getModel('core/session', array('name' => 'frontend')); 

Sonra böyle müşteri/oturumuna erişebilirler:

$customer = Mage::getSingleton("customer/session", array('name' => 'frontend'))->getCustomer();