增强magento的缓存机制!
magento系统是一个非常优秀的系统,个人分析如下
1
模块强大的可扩展性
2
eav表结构,让客户自己增加产品等属性非常容易,index manager这个功能在讲这些表合并起来,成为一个表,在数据库的product和category表,你应该能发现后缀为flat_1的表吧,这个就是magento表,这也是magento为什么在使用后,尤其是多网店,多域名,表会越来越多的原因!
3
多网店,多域名,更强的配置!
4
magento的缓存机制!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
本文讲解的是magento的缓存机制
magento默认的缓存block,是菜单,其余的都没有做缓存!这其实也不难理解,不同的客户有不同的需求,我们做开源系统的,难调众口,你们自己去做吧!
不同于门户网站,magento是不能完全做静态页面的,因为有一些动态的因素,譬如购物车的信息,
所以magento只能做局部缓存,这也就是本文要说的magento block缓存机制!
对于一个block的缓存,只需要在这个block的type对应的文件中添加一下的代码即可
1 | protected function _construct() |
2 | { |
3 | $this ->addData( array ( |
4 | 'cache_lifetime' => 86400, //seconds |
5 | 'cache_tags' => array (Mage_Catalog_Model_Product::CACHE_TAG . "_" . $this ->getProduct()->getId()), |
6 | 'cache_key' => $this ->getProduct()->getId(), |
7 | )); |
8 | } |