【发布时间】:2012-01-28 20:07:15
【问题描述】:
我可以使用下面流行的方法完美地访问 Magento 之外的现有会话。
require 'app/Mage.php';
$mageRunCode = isset ( $_SERVER ['MAGE_RUN_CODE'] ) ? $_SERVER ['MAGE_RUN_CODE'] : '';
$mageRunType = isset ( $_SERVER ['MAGE_RUN_TYPE'] ) ? $_SERVER ['MAGE_RUN_TYPE'] : 'store';
$app = Mage::app ( $mageRunCode, $mageRunType );
Mage::getSingleton ( 'core/session', array ('name' => 'frontend' ) );
这很好用,但是我如何在 Magento 之外实际创建一个 Magento 会话,以填充 log_url、log_visitor 等表以及将访问者数据分配给会话?
目前,用户直接从另一个网站到达我网站上的页面。此特定页面在 Magento 之外,但我需要使用以下代码访问他们的访客 ID:
Mage::getSingleton ( 'log/visitor' )->getId()
如果用户以前去过我的 Magento 商店,这很好用,但如果没有,它只会返回一个布尔值 false。我想做的是检查是否为访问者 ID 设置了值,如果没有,则在 Magento 之外的第一页上创建访问者,以便我可以在此页面上使用访问者 ID。同样重要的是,一旦用户进入我的 Magento 商店,相同的访客 ID 将应用于他们对我的目录的导航,即相同的会话。有什么想法吗?
【问题讨论】:
标签: session magento logging visitor-pattern