2011-05-14 111 views
0

如何在产品创建时管理magento中的时区,在前端我按时间过滤产品,但问题是客户想要根据用户的时区显示产品创建时间?例如,我在管理区域添加了一个产品,它显示的是12.21pm,但同时客户从其他国家查看该产品时应根据用户的时区显示当前时间,我们该如何做到这一点? 请帮我解决这个问题。 在此先感谢。在magento中管理时区

回答

1

它为我工作。

 

$session = Mage::getSingleton('customer/session'); 
     $time_zone = $session->getCustomer()->getTimezone(); 
     $timeoffset = Mage::getModel('core/date')->calculateOffset($time_zone); 
     $timeoffset = $timeoffset - Mage::getModel('core/date')->getGmtOffset($time_zone); 


 
1

具体谈谈你是如何生成的日期,以及如何你希望它显示...

这里是一个普遍的做法:

在模板代码的地方跨度大约有类你的时间值。这些时间字符串可以用很多选项进行格式化,包括php代码中的时区。

在适当的位置放置javascript:在页眉(onload函数)中,在页脚中或在您的view.phtml中内联。

在JavaScript中使用Prototype库遍历的时间跨度,例如:

$$('yourdateclass').each(function() { 
// 
}); 

在每一元素与Date.parse()的时间转换为Date对象。然后使用getTimezoneOffset来说明访问者的位置,相应地添加/减去,然后将元素内部的html更新为显示时间/日期的首选方式。