phpcms开发就是模仿里面原有的方法进行扩展,前台要实现分页,就去找后台页面的分页实现。

  如后台 扩展->后台操作日志,就有分页展示。

  1、先去添加自己的分页方法(千万不要在原来的方法上修改,会影响到后台页面的分页)

    打开 phpcms\libs\functions\global.func.php 文件,在页面搜索pages,找到分页方法,然后复制一份修改方法名,修改里面的分页样式,变为自己的方法。我起名为pages_home

    

  2、解析pc标签进行sql查询类修改。

    打开 phpcms/libs/classes/template_cache.class.php,大概在101行,$str .= '$r = $get_db->sql_query("'.$sql.'");$s = $get_db->fetch_next();$pages=pages($s[\'count\'],     $page, $pagesize, $urlrule);';,将这一行复制一份,将方法名改成自己的。

    我的如下:$str .= '$r = $get_db->sql_query("'.$sql.'");$s = $get_db->fetch_next();$pages_home=pages_home($s[\'count\'], $page, $pagesize, $urlrule);';

    

  3、常用分页类修改。

    打开 phpcms/libs/classes/template_cache.class.php,大概在211行,$str .= '$pages = pages($'.$op.'_total, $page, $pagesize, $urlrule);';将这一行复制一份,改成自己的

    我的如下:$str .= '$pages_home = pages_home($'.$op.'_total, $page, $pagesize, $urlrule);';

  4、查询列表并分页类修改。

    打开 phpcms\libs\classes\model.class.php,大概在61行,$this->pages = pages($this->number, $page, $pagesize, $urlrule, $array, $setpages);

    将这一行复制一份,改成自己的。我的如下:

    $this->pages = pages_home($this->number, $page, $pagesize, $urlrule, $array, $setpages);

  5、前台页面修改。

    前台模板中的{$pages}要修改为{$pages_new}即可。

    pc标签中的参数,num表示每页显示的条数,page表示当前页。

            <div class="s5_in">
{pc:content action="lists" catid="13" siteid="1" moreinfo="1" num="3" page="$_GET[page]"}
{loop $data $va}
<a class="a1">
<img src="{$va[thumb]}" />
<div>
<h4>
  <b>{$va[title]}</b>&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;
  <span>{$va[object]}:{$va[symptom]}</span>
  </h4>
<p>{$va[description]}<span>&lt;查看详情&gt;</span></p>
</div>
</a>
{/loop}
{/pc}
</div>

注意:按照上面步骤走下来后,发现分页怎么都不出来!!!后来发现pages方法里面有个条件,当信息条数大于每页显示条数时,分页才会出现。所以多加几条数据试试看。

  

Phpcms 前台页面实现分页的更多相关文章

  1. bookStore第二篇【图书模块、前台页面】

    图书模块 分析 在设计图书管理的时候,我们应该想到:图书和分类是有关系的.一个分类可以对应多本图书. 为什么要这样设计?这样更加人性化,用户在购买书籍的时候,用户能够查看相关分类后的图书,而不是全部图 ...

  2. 图书管理系统【JavaWeb:部署开发环境、解决分类、图书、前台页面模块】

    前言 巩固Servlet+JSP开发模式,做一个比较完整的小项目. 成果图 该项目包含了两个部分,前台和后台. 前台用于显示 后台用于管理 该项目可分为5个模块来组成:分类模块,用户模块,图书模块,购 ...

  3. MVC前台页面做登录验证

    最近接触了一个电商平台的前台页面,需要做一个登录验证,具体情况是:当用户想要看自己的订单.积分等等信息,就需要用户登录之后才能查询,那么在MVC项目中我们应该怎么做这个前台的验证呢? 1.我在Cont ...

  4. MVC 从后台页面 取前台页面传递过来的值的几种取法

      MVC 从后台页面 取前台页面传递过来的值的几种取法   <1>前台页面 Index视图 注意:用户名表单的name值为txtName 密码表单的name值为txtPassword & ...

  5. .NET生成静态页面并分页

    因为公司的产品用asp开发, 前一段时间用asp写了一个生成静态页面并分页的程序,但缘于对.net的热爱,写了这个.net下的生成静态页面并分页的程序. 主要的原理就是替换模板里的特殊字符. 1.静态 ...

  6. EF更新,数据库值变化,前台页面并不变化,刷新也不变化,重新运行程序则变化----开发中遇到的问题(已解决)

    首先说一下我遇到这个情况的代码情景,首先上错误代码 UserInfo userInfo = Session["UserInfo"] as UserInfo; ); 这段代码所呈现的 ...

  7. phpcms前台退出登录的时候提示信息'退出成功0'

    问题背景: phpcms前台退出登录的时候,提示了一个退出成功0 让我很困惑为啥有个0呢? 问题分析: 进入 ./phpcms/modules/member/index.php 找到logout方法, ...

  8. phpcms 导航栏点击栏目颜色定位方法和phpcms list页实现分页

    另:一个栏目下面如果没有子栏目,那么它调用的模板就是列表页模板(及list_为前缀的模板):如果一个栏目下面有子栏目,那么它调用的就是栏目首页模板(category_为前缀的模板). 当你这个栏目添加 ...

  9. ASP.NET MVC中从后台控制器(Controller)传递数据到前台页面视图(View)方式

    方式一: 数据存储模型Model: public class CalendarEvent { public string id { get; set; } public DateTime start ...

随机推荐

  1. java中的一些规则(菜鸟的课堂笔记)

    ls 查看目录下文件 java规则 代码都定义在类中,用class定义 禁止一个源文件写两个类: 一个源文件中,只能有一个类文件是pubic: 一个源文件中如果有多个类,编译完之后会产生多个class ...

  2. 用C写一个web服务器(四) CGI协议

    * { margin: 0; padding: 0 } body { font: 13.34px helvetica, arial, freesans, clean, sans-serif; colo ...

  3. NodeMCU入门(4):搭建Web服务器,配置网络连接

    准备工作 1.NodeMCU模块 2.ESPlorer v0.2.0-rc6 3.NodeMCU-HTTP-Server 搭建web服务器 下载https://github.com/wangzexi/ ...

  4. Spring学习(24)--- AOP之 Aspect instantiation models(aspect实例模式)特别说明

    重要: schema-defined aspects只支持singleton model,即 基于配置文件的aspects只支持单例模式

  5. 如何让.Net线程支持超时后并自动销毁!

    如何让.Net线程支持超时后并自动销毁! 1.使用CancellationTokenSource之基于Task实现方式 CancellationTokenSource source = new Can ...

  6. 基于android的语音识别

    1.注册账户,添加应用 2.针对android平台的选择应用,下载SDK 3.将SDK的libs下文件拷贝到工程的libs目录下 4.添加用户权限 <uses-permission androi ...

  7. SQL之删除触发器

    比如要删除的触发器名字叫dbo.test_trigger. 先判断这个触发器是否存在,判断存在后删除 if exists (select * from sysobjects where name = ...

  8. 使用 Python 进行并发编程 -- asyncio (未完)

    参考地址 参考地址 参考地址 Python 2 时代, 高性能的网络编程主要是使用 Twisted, Tornado, Gevent 这三个库. 但是他们的异步代码相互之间不兼容越不能移植. asyn ...

  9. Sql_Case_When用法

    http://wenku.baidu.com/link?url=XBnkUzGtiJFhTnQk5HbmdgndhVEYJdcfDEhSEIFeTRn9-41KMLf_49wKiydNCF-4g3Qi ...

  10. centos6.7下安装mysql5.6.22同时解决中文乱码问题

    1.下载 http://dev.mysql.com/downloads/mysql/ 或者使用wget下载: wget http://dev.mysql.com/get/Downloads/MySQL ...