最近首页很慢,运行magento profile检查的时候,发现首页某个templat运行时间占了一半,大概6s。

用magento自带的缓存,尝试把代码中的collection缓存起来,但不知道为啥一直失败,最后决定把整个template转成静态的页面,每两小时重新生成。

代码如下:

<?php
$dir = Mage::getBaseDir().DS.'var'.DS;
$fileName = $dir.'real_static_categories.phtml';

if(!file_exists($fileName)||(filemtime($fileName)&&(time()-filemtime($fileName)>7200))){
    $text=Mage::app()->getLayout()->createBlock('catalog/product_list')->setTemplate('catalog/product/productcarousel/carouselblocks/categories.phtml')->toHtml();
    $file=fopen($fileName,'w');
    fwrite($file,$text);
    fclose($file);
}
$file=fopen($fileName,'r');
echo fread($file,filesize($fileName));
fclose($file);

?>

效果良好,访问速度提升一倍。

相关文章:

  • 2021-10-29
  • 2021-10-27
  • 2022-12-23
  • 2022-12-23
  • 2021-09-03
  • 2021-12-14
  • 2021-09-16
  • 2022-02-07
猜你喜欢
  • 2022-03-05
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-19
  • 2022-12-23
相关资源
相似解决方案