smarty生成静态页问题,值得思考?
程序员文章站
2022-04-30 23:30:25
...
我现在想使用smarty生成列表页,是真静态的。
如:
分类:新闻
共有50条数据。
一个列表页为10条数据。
共有5个分页。
如dedecms生成栏目页一样。
请教下大牛们,如何实现?劳烦写个小例子。
以后如果你要用的话,把数据库的字段换下,连接数据库根据你自己的引擎来写,当然还有待扩展,刚写完的。
如:
分类:新闻
共有50条数据。
一个列表页为10条数据。
共有5个分页。
如dedecms生成栏目页一样。
请教下大牛们,如何实现?劳烦写个小例子。
回复讨论(解决方案)
php 怎么做,smarty 还是一样的没啥区别
把生成的内容5个页要做成一定格式的页面,应该需要在smarty中专门写个方法
http://bbs.php100.com/read-htm-tid-308311.html
版主发的链接,代码不具体,模板也不好实现。
难点在于,
列表页模板如何写?
后台程序,如何分页生成不同的页面,调用不同的文章。
我已经做成功了,分享代码给大家,希望以后有人用得着。
public function tplmakelist(&$tpl){ $pageSize=1; $_field=array('a.id','a.title','b.typedir','b.templist','b.keywords','b.description'); $this->_tables=array(DB_FREFIX.'article a',DB_FREFIX.'article_category b'); $data=parent::select($_field,array('where'=>array("a.catid=b.id AND b.id={$this->_R['typeid']}"))); $total=count($data);//分类下的所有文章 $pageTotal=ceil($total/$pageSize);//共有多少个分页 $tpl->template_dir=SMARTY_TEMPLATE_DIR; for ($i=1;$itypedir."/list_{$this->_R['typeid']}_$i.html"; $this->_tables=array(DB_FREFIX.'article a',DB_FREFIX.'article_category b'); $firstPage = ($i-1)*$pageSize; $datas=parent::select($_field,array('where'=>array("a.catid=b.id AND b.id={$this->_R['typeid']}"),'limit'=>"$firstPage,$pageSize")); $tpl->assign('findlist',$data[0]); $tpl->assign('pagelist',$datas); $content=$tpl->fetch($data[0]->templist); $this->MakeHtmlFile($file_name, $content); } } private function MakeHtmlFile($file_name, $content) { //目录不存在就创建 if (!file_exists (dirname($file_name))) { if (!@mkdir (dirname($file_name), 0777)) { die($file_name."目录创建失败!"); } } if(!$fp = fopen($file_name, "w")){ echo "文件打开失败!"; return false; } if(!fwrite($fp, $content)){ echo "文件写入失败!"; fclose($fp); return false; } fclose($fp); chmod($file_name,0666); }
{foreach from=$pagelist item=list}{/foreach}
以后如果你要用的话,把数据库的字段换下,连接数据库根据你自己的引擎来写,当然还有待扩展,刚写完的。
上一篇: HTML里的br怎么使用
推荐阅读
-
方便实用的PHP生成静态页面类(非smarty)第1/2页
-
解决dede生成静态页和动态页转换的一些问题,及火车采集入库生成动态的办法
-
关于静态页生成问题 突破form数量限制
-
方便实用的PHP生成静态页面类(非smarty)第1/2页
-
PHP高手,我刚刚学PHP,在生成静态分页遇到了点有关问题,就是反页的有关问题,希望可以給出一个漂亮完整的翻页代码,多谢
-
解决dede生成静态页和动态页转换的一些问题,及火车采集入库生成动态的办法
-
解决dede生成静态页和动态页转换的一些问题,及火车采集入库生成动态的办法_PHP教程
-
解决dede生成静态页和动态页转换的一些问题,及火车采集入库生成动态的办法_php技巧
-
有关smarty模板引擎生成静态页的关键代码
-
smarty生成静态页有关问题,值得思考