国际电子商务技术 & Magento开发公司

Maishen technologies

Welcome visitor! You canlogin orcreate an account.

热线:+86-0532-58973093

麦神科技有限公司
Mygod Technologies

官方认证开发工程师

怎么使用magento的block cache机制

2012年5月25日星期五 Asia/Shanghai上午8:18:38

magento自己带有缓存机制

我们要做的是实现magento的 _construct方法,然后使用addData方法,将里面的cache_lifttime和cache_tags赋值

如下:

在这个例子里,缓存存在的时间为120秒,这个将存在缓存中,知道这个产品的缓存被删除!

  1. class {NS}_{Module}_Block_{View} extends Mage_Core_Block_Template {
  2.  
  3.     protected function _construct()
  4.     {
  5.         $this->addData(array(
  6.             'cache_lifetime'    => 120,
  7.             'cache_tags'        => array(Mage_Catalog_Model_Product::CACHE_TAG),
  8.         ));
  9.     }   
  10.  
  11. }

这个缓存将根据产品id的不同生成不同的缓存

  1. class {NS}_{Module}_Block_{View} extends Mage_Core_Block_Template {
  2.  
  3.     protected function _construct()
  4.     {
  5.         $this->addData(array(
  6.             'cache_lifetime'    => 120,
  7.             'cache_tags'        => array(Mage_Catalog_Model_Product::CACHE_TAG),
  8.             'cache_key'            => $this->getProduct()->getId(),
  9.         ));
  10.     }   
  11.  
  12. }

当我们做缓存的时候,要把要该url下的所有参数加入到cache_key,来保证这个key的唯一性,进而在不同的参数下的页面是不一样的!

我上面是大致写写,如果您想具体的研究,下面是链接地址,可以参看这个

http://www.magentocommerce.com/wiki/5_-_modules_and_development/block_cache_and_html_ouput

或者上谷歌搜索magento block cache

资料也是一大把的,然后就是自己琢磨测试了,一定要保证key的唯一性,不然,很多的不同的页面,做了block cache后发现页面都是第一次访问的那个!

当访问量大的时候,效果还是比较明显的!

0 Comments | Posted in magento二次开发 By terry water

magento多语言网店迁移小技巧

2012年5月8日星期二 Asia/Shanghai上午10:37:01

在magento多语言网店迁移的时候,需要在core_config_data里面修改路径,如果语言多,相当费劲

可以通过一个sql的小技巧批量修改,也就是sql的替换函数

Update core_config_data set value = replace (value , 'http://127.0.0.1/' , 'http://wwwsample.com/');

http://127.0.0.1/为原来的地址

http://wwwsample.com/为改变后的地址

OK,搞定,magento多语言网站换服务器迁移的时候就会省劲一些!

 

0 Comments | Posted in magento日常所用 By terry water

看来内容是王道啊

2012年4月27日星期五 Asia/Shanghai下午9:44:55

看来内容才是王道啊,从去年11月份开始建立我的magento网站到现在有小半年了,一直以来都是自己写博客文章,博客文章大致有150篇左右了,搜索引擎也很给力,在百度的排名都还凑合,比较欣慰的是“magento插件”这个关键词排到了百度首页。

附上抓图,做个纪念

谷歌的排名波动比较大,没有百度稳定,这几天发现在上面,过几天又掉下来了,尤其我的首页的magento的关键词密度有点大,首页的排名经常波动,感觉谷歌有几套排名次序,过段时间都周期性变换一下,让大家都有机会在首页上露露脸!

好了!欣慰一下就可以了!

再就是比较欣慰的是有的人说我的文章比较实用,比较喜欢,在这里谢谢了你们了,以后遇到的问题解决之后还会继续更新magento的文章分享出来!

0 Comments | Posted By terry water

magento的custom option属性,客户自定义属性,可以让客户在前台选择自己的属性,譬如size,color等,但是magento1.6版本有一个bug,就是在后台订单中无法查看产品的客户自定义属性(custom options)!

这也是比较郁闷的,呵呵,下面是解决的办法:

找到下面的文件地址:

app/design/adminhtml/default/default/template/sales/items/column/name.phtml

在 44行:
<?php $_option = $this->getFormattedOption($_option['value']); ?>

把这行删除或者注释掉,如下
<?php //$_option = $this->getFormattedOption($_option['value']); ?>

然后保存,就可以在后台订单里面查看到对应的产品的客户自定义属性了!

0 Comments | Posted in magento二次开发 By terry water

Call to a member function toHtml()错误的解决!

2012年4月24日星期二 Asia/Shanghai上午11:35:38

 

在安装模板的时候,有一些比较低版本的模板安装在高版本后会出现问题:

Call to a member function toHtml()

解决的办法:

找到文件地址:

app/design/frontend/default/default/layout/page.xml

当然,上面的文件包名和模板名是默认的地址,您需要到您的当前模板下找到page.xml文件,然后打开这个文件

找到代码

<block type="core/profiler" output="toHtml"/>
然后把这段代码替换成

<block type="core/profiler" output="toHtml" name="core_profiler"/>

然后刷新下缓存,如果开启了编译,关闭掉,就可以了!

 


0 Comments | Posted in magento二次开发 By terry water
 
  • Mygod Technologies
  • 麦神科技有限公司
  • 香港中路8号
  • 中铁青岛中心大厦A3001
  • 市南区, 青岛, 266000
  • 电话: 0532-5897-3093

订阅我们的最新消息。

我们将严格尊重您的隐私。

关注我们的微信
获取外贸电子商务最新资讯;跨境推广最新策略;电子商务网站技术最新趋势。

2018 Mygod Technologies. 保留所有权. Privacy Policy