首先先要把需要静态话的内容发到模版上去
eg.这个是静态化首页的
function staticIndex(){
$newslist = $article->getArticles(null,54,'DESC',1,6,false,1,2,'',0,0,1);
if($newslist){
foreach($newslist as $k=>$v){
$newslist[$k]['title_all'] = $v['title'];
$newslist[$k]['title'] = cutstr($v['title'],36,'…');
}
$smarty->assign('newslist',$newslist);
}
$content = '';
$content = $smarty->fetch('index.html',true);//这是Smarty自带的生成静态页面的函数
$static_name = ROOT_PATH.'index.html';//这是生成静态页面当前的路径文件
fopen($static_name,'a');//打开这个文件
@file_put_contents($static_name,$content);//最后写进去
return true;
}
//静态化列表页,按类别不同经行静态化
function staticContent(){//需要静态话的条数
$ids = array();//获取所有的内容
$ids = $this->getListIds();//这个方法获取所有的内容,下面红字部分对应它的方法
foreach($ids as $k=>$value){
//echo $value['catid'];
if(!file_exists(ROOT_PATH.'demo/')){//判断根目录下面有没有这个文件夹,如果没有则创建demo这个文件夹
mkdir(ROOT_PATH.'demo/');
}
if(!file_exists(ROOT_PATH.'demo/'.$value['catid'])){//判断这个文件夹下面有没有对应的类别文件夹
mkdir(ROOT_PATH.'demo/'.$value['catid']);
}
$html_content = $this->getDemoContent($value['demoid']);
$static_name = ROOT_PATH.'demo/'.$value['catid'].'/'.$value['demoid'].'.html';
fopen($static_name,'a');
@file_put_contents($static_name,$html_content);
}
return true;
}
//拿出需要静态化的页面ID
function getListIds(){
$sql = "select * from {$this->tablepre}demo order by demoid asc";
$rs = $this->db->getAll($sql);
if($rs){
return $rs;
}else{
return false;
}
}
//content单页静态化
function getDemoContent($id){
global $smarty,$view_templates,$admin_templates;
loadModel(array('demo'));
$demo = new demo();
$content = '';
$smarty->template_dir = ROOT_PATH.$view_templates;
$getMobanOne = $this->getMobanDetail($id);
$mobandetail = $demo->MobanList($id);
foreach($mobandetail as $k=>$v){
$smarty->assign($k,$v);
}
$this->catid = $getMobanOne['catid'];
$smarty->assign('pre_title',$mobandetail['membername']);
$smarty->assign('mobandetail',$mobandetail);
$content = $smarty->fetch('demo_show.html',true);
$smarty->template_dir = ROOT_PATH.$view_templates;
return $content;
}
以前用的那个生成静态页面每次都要执行PHP文件,然后才能生成,现在我写的这个就是由人控制的,想生成就生成,很方便,希望能给大家带来方便,如有什么疑问,就直接联系我的qq:523132661,祝大家工作愉快。

PHP 实现全站静态化 首页静态化 列表页静态化 内容静态化 .相关推荐

  1. 让wordpress首页和分类列表页只显示文章标题列表

    http://up2u.72pines.com/2009/07/rangwordpressshouyehefenleiliebiaoyezhixianshiwenzhangbiaotiliebiao/ ...

  2. zblog php 分类页,Zblog首页和分类列表页使用不同的模板

    今天在修改天兴模板的时候,发现single.php需要调用post-single.php和post-page.php两个页面,以下列文章做参考,实现了如下功能: 2017年做的b2b网站,如链接存在, ...

  3. 解决phpcms模版设置中不能显示栏目首页模板,栏目列表页模板,内容页模板等下拉菜单选项的问题!...

    第1步:检查相应的模版文件夹中是否有模版文件 一般地,查看目录phpcms/templates/default[模板风格标识]/content 栏目首页模板:以(category_)开头,catego ...

  4. 谈*静态页*(或网页*静态化*)的时候,请区分一些概念(转)

    http://www.cnblogs.com/JeffreyZhao/archive/2009/07/05/talk-about-page-statilization.html "静态页&q ...

  5. java使用的页面静态化技术_java秒杀系列(2)- 页面静态化技术

    ###前言 通过代码片段分别介绍服务端渲染.客户端渲染.对象缓存三种方式的写法. 代码片段仅供参考,具体实现需要根据业务场景自行适配,但思想都是一样. 一.服务端渲染方式 ####1.接口返回html ...

  6. html分页首页上一页下一页,HTML静态分页(形如:首页,上一页,下一页,尾页)...

    在HTML中有时候我们会用到静态分页,一次拿回一定量的数据结果条目,我们会以形如:第2页,共12页  首页 上一页 下一页 尾页 的方式进行静态分页,以下是该种静态分页的代码,供兄弟姐妹们参考. fu ...

  7. DIV布局——仿英雄联盟LOL首页(11页) 大学生简单个人静态HTML网页设计作品 DIV布局个人介绍网页模板代码 DW学生个人网站制作成品下载

    HTML5期末大作业:仿英雄联盟网站设计--仿英雄联盟LOL首页(11页) 大学生简单个人静态HTML网页设计作品 DIV布局个人介绍网页模板代码 文章目录 HTML5期末大作业:仿英雄联盟网站设计- ...

  8. HTML静态分页(形如:首页,上一页,下一页,尾页)

    在HTML中有时候我们会用到静态分页,一次拿回一定量的数据结果条目,我们会以形如:第2页,共12页  首页 上一页 下一页 尾页 的方式进行静态分页,以下是该种静态分页的代码,供兄弟姐妹们参考. &l ...

  9. HTML5期末大作业:仿英雄联盟网站设计——仿英雄联盟LOL首页(11页) 大学生简单个人静态HTML网页设计作品 DIV布局个人介绍网页模板代码 DW学生个人网站制作成品下载

    HTML5期末大作业:仿英雄联盟网站设计--仿英雄联盟LOL首页(11页) 大学生简单个人静态HTML网页设计作品 DIV布局个人介绍网页模板代码 DW学生个人网站制作成品下载 常见网页设计作业题材有 ...

最新文章

  1. 腾讯开源分布式NoSQL存储系统DCache | 技术头条
  2. 盘点2018年计算机视觉领域技术突破
  3. android u盘拷贝文件大小,用手机U盘备份或导出手机文件,还能扩容
  4. Python | numpy | np.split()与np.array_split()函数
  5. c语言字符串初值问题!
  6. 《ODAY安全:软件漏洞分析技术》学习心得-----shellcode的一点小小的思考
  7. db2的bufferpool不足报错的快速解决
  8. 查询没有走索引_关于MySQL种的in函数到底走不走索引、我和同事差点大打出手!...
  9. 特斯拉涨价:Model 3价格上调1万元 Model Y上调2.1万
  10. 机器学习之降维方法(LDA、PCA)小结
  11. ubuntu软件安装、卸载
  12. SONiC:为Microsoft全球云提供支持的网络交换机软件
  13. python 获取foobar2000官网全部插件
  14. BIN、HEX,ELF,AXF文件的区别
  15. 什么叫云服务器?云服务器的概念及优势
  16. 腾讯网易涉嫌抄袭旅行青蛙,却抄丢了游戏的核心吸引力
  17. 达人评测 华为手表 WATCH 3怎么样
  18. 明明输给了 SpaceX,OneWeb 为什么还能拿到英国政府的钱?
  19. 《自控力》与《学习之道》
  20. 微星Z370M主板参数

热门文章

  1. 计算机硬件基础知识(一)
  2. 谈谈自己对内存回收的理解
  3. 2022年全球市场光学透明胶片总体规模、主要生产商、主要地区、产品和应用细分研究报告
  4. layui文本框的点击事件实现
  5. java中的两同两小一大原则
  6. C#作业三——连接数据库
  7. C++笔记之return的用法
  8. 利用opencv结合mfc实现识别圆形标记点并计算多个圆形标记点的三维坐标,拟合平面并计算法向量
  9. Linux命令之声明变量declare
  10. html统计表合并单元格的快捷键,多个单元格内容合并为一个单元格,3种用法-excel合并单元格快捷键...