帝国CMS通过AJAX实现无刷新加载,首先创建loadmore.php接口文件,利用GET请求接收分页参数,查询数据库并返回JSON数据;接着在前端模板添加内容容器和“加载更多”按钮;然后引入jQuery发送AJAX请求,动态追加数据到页面;最后优化样式与交互体验,确保安全过滤与性能缓存。

帝国CMS实现AJAX无刷新加载更多内容,核心是通过前端AJAX请求调用后端PHP接口,动态获取分页数据并追加到页面中,无需刷新整个页面。下面详细介绍具体实现步骤。
1. 创建数据调用接口文件
在网站根目录或e/extend/目录下创建一个PHP文件,例如loadmore.php,用于处理AJAX请求并返回JSON格式的数据。
示例代码:
loadmore.php
$link = db_connect(); $empire = new mysqlquery();$page = (int)$_GET['page'] ?? 1; $limit = (int)$_GET['limit'] ?? 10; $start = ($page - 1) * $limit;
$classid = (int)$_GET['classid'] ?? 0; // 指定栏目ID,可选
$where = ''; if($classid > 0) { $where = " and classid='$classid'"; }
$sql = $empire->query("SELECT id,title,smalltext,titleurl,onclick,newszt,truetime FROM {$dbtbpre}ecms_news WHERE checked=1 $where ORDER BY newstime DESC LIMIT $start,$limit");
$data = array(); while($r = $empire->fetch($sql)) { $r['title'] = htmlspecialchars($r['title']); $r['titleurl'] = htmlspecialchars($r['titleurl']); $r['smalltext'] = strip_tags($r['smalltext']); $data[] = $r; }
echo json_encode($data); exit; ?>
2. 前端页面添加“加载更多”按钮
在需要展示内容的模板(如list.listtemp)中,保留原有列表结构,并增加一个“加载更多”按钮和容器。
示例HTML结构:
3. 编写AJAX加载脚本
引入jQuery或使用原生JS发送请求。以下以jQuery为例:










