---
title: "关于phpcms get标签分页的问题"
url: "https://yjyj.net/learn/1561.html"
author: "小 虾 (生猛大蝦编辑部)"
published_at: "2010-08-18T03:22:11+08:00"
updated_at: "2010-08-18T03:22:11+08:00"
categories: "招数学习"
tags: "Linux运维, MySQL数据库, WordPress开发"
summary: "本文聚焦 phpcms 的 get 标签分页为何会在生成后报 SQL 错误：问题出在分页参数与标签 SQL 组合方式不匹配。文章给出手写标签开头的修正思路，说明在带 page 参数时如何让分页正常工作，适合做 phpcms 标签排错参考。"
source: "生猛大蝦 (https://yjyj.net)"
---

# 关于phpcms get标签分页的问题

> 来源：[生猛大蝦 (yjyj.net)](https://yjyj.net/learn/1561.html) · 作者：小 虾 · 发布时间：2010-08-18

## 30 秒核心看点 (TL;DR)

- 站点工具自动生成的 get 标签，分页部分会触发 SQL 错误。
- 手写标签开头并补齐分页相关参数后，分页恢复正常。
- 核心结论：get 标签分页要兼顾 SQL 条件与 page 参数的配合。

我用站点提供的工具得到的get标签:

   

  {get sql="SELECT `catid`,`title`,`thumb`,`description`,`url`,`updatetime` FROM `phpcms_content` WHERE `catid` = '$catid' ORDER BY  `updatetime` DESC" rows="6"  page="$page" }   
{$r[catid]}    
{$r[title]}    
{$r[thumb]}    
{$r[description]}    
{$r[url]}    
{$r[updatetime]} 

  {/get}   
{$pages}

   

  生成后分页部分出现sql错误

   

  后来自己写了个标签的开头部分:

  {get sql="SELECT contentid,catid,title,style,thumb,keywords,description,userid,updatetime,islink,inputtime,url FROM `phpcms_content` WHERE  status=99   AND `catid` IN(31,32)  ORDER BY contentid DESC" rows="6" page="$page"catid="$catid"}

   

  生成后分页正常.不知道为什么......

## 延伸问答与排错指南 (FAQ)

### phpcms get标签分页为什么会报SQL错误？
常见原因是标签生成的 SQL 与分页参数组合不兼容，尤其是 page 参数参与后，查询条件或标签属性没有正确对齐，导致分页解析异常。排查时应先确认 SQL 本身可执行，再检查 page、rows 以及额外参数是否冲突。

### get标签分页正常需要注意哪些参数？
重点看 rows、page 以及 SQL 条件是否一致。分页标签不仅要能查出数据，还要让分页组件正确识别总数和当前页。若自动生成的标签报错，可尝试手写标签开头，补齐必要参数后再测试。

### 手写phpcms标签开头能解决什么问题？
手写标签开头的好处是能主动控制 SQL 和分页参数，避免工具自动生成时带入不合适的条件。本文案例里，改成手写后分页恢复正常，说明问题多半出在自动生成标签的参数组织方式上。

---
更多 Linux 运维、WordPress 性能优化、前端工程化、Shopify 独立站与极客折腾指南：[生猛大蝦全站文章归档 (https://yjyj.net/archive)](https://yjyj.net/archive)
