合肥网站建设工作室

关注合肥工作室微信公众号,提供最新网站建设资讯

扫一扫微信二维码

LZ工作室教你ECSHOP生成静态页面方法!

2010-11-24 12:24:50网站设计 389

伪静态已经基本上可以满足大部分人的需求,如果不满足的还可以根据前面的一篇文章对重写规则进行修改,以满足自己的需求。但是本文所要描述的是,根据ECSHOP内在的一些代码,我们生成纯静态的网页,使系统更好的优化。在这里,我们先对首页进行纯静态生成。kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
1.复制首页index.php为index_html.php,因为ECSHOP是使用SMARTY模板引擎的,所以我们可以使用SMARTY生成文件函数,把模板kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
的静态网页输出。kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
在首页中,$smarty->display('index.dwt', $cache_id);有这一句,说明是把网页显示出来,现在我们把它改成如下代码(参看注释)kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
$file = 'index.html';//静态网页文件名kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
$content = $GLOBALS['smarty']->make_html('index.dwt');//根据index.dwt模板生成网页内容kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
$filename = ROOT_PATH . $file;//静态网页路径kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
file_put_contents($filename, $content);//生成文件kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
以上几条简单的语句,我们就可以生成首页的静态网页。同理,我们可以生成产品类别和产品的静态网页,整个系统的静态化就完成了。kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
首页静态页面生成后,我们接下来要生成的是产品类别的静态页面,我的想法是把产品类别页面保存在跟目录下,这样虽然会比较乱,kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
但是比较适合优化,因为一般搜索引擎抓取的时候只抓取二到三层。把产品类别放在根目录,体现产品类别的重要性,易于搜索引擎的kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
抓取,另外一方面,我们可以把产品放在下个目录中。kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
类似代码:kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
$filename = build_uri('category', array('cid' => $catinfo['cat_id']));//构造路径,这个可以选择自己喜欢的构造方法kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
   $content = $GLOBALS['smarty']->make_html('category.dwt');//产生静态页面内容kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
   $filename = ROOT_PATH . $filename;//生成文件路径,在根目录下kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
   file_put_contents($filename, $content);//输出kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
产品的静态页面代码:kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
$goodinfo = get_all_goodsinfo($goods_id);kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
$cat_name   =   $goodinfo['cat_name'];kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
   $goodsfile = build_uri('goods', array('gid' => $goods_id));kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
$content = $GLOBALS['smarty']->make_html('goods.dwt');kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
$html_tempdir = (ROOT_PATH.$cat_name.'/');kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
if (!is_dir($html_tempdir))//生成产品目录kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
{kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
   mkdir($html_tempdir);kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
}kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
$htmlfilename = ROOT_PATH . $goodsfile;kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
file_put_contents($htmlfilename,$content);kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
我的是使用类别名称加下划线:kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
function   build_uri(........)kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
................kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
         case 'category':kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
             $cat_name = $GLOBALS['db']->getOne('SELECT cat_name FROM ' . $GLOBALS['ecs']->table('category') . " WHERE cat_id = '$cid'");kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
                   $uri = $cat_name . '-' . $cid;kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
                   if (!empty($page))kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
                   {kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
                     $uri .= '-' . $page;kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
                   }kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
........kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
case 'goods':kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
          $goods_info = $GLOBALS['db']->getRow('SELECT g.goods_name, c.cat_name FROM ' . $GLOBALS['ecs']->table('goods') . " as g left join " .kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
      $GLOBALS['ecs']->table('category') . " as c on c.cat_id = g.cat_id WHERE g.goods_id   = '$gid'");kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
      $goods_name =   $goods_info['goods_name'];kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
       $cat_name = $cat_name;kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
         kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
            $uri =   $cat_name . '/' . $goods_name . '-' . $gid ;kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
      kz6合肥网站工作室|合肥网站建设优化推广 - 合肥LZ建站工作室
   ..........................

本文关键词
ECSHOP生成静态页面,生成静态页面