sp_sql_posts_paged()

  1. sp_sql_posts_paged($tag,$pagesize,$pagetpl)

功能:
文章分页查询方法

参数:
$tag:查询标签,以字符串方式传入,例:”field:post_title,post_content;limit:0,8;order:post_date desc,listorder desc;where:id>0;”

  1. field:调用post指定字段,如(id,post_title...) 默认全部
  2. limit:数据条数,默认值为10,可以指定从第几条开始,如3,8(表示共调用8条,从第3条开始)
  3. order:排序方式,如:post_date desc
  4. where:查询条件,字符串形式,和sql语句一样
  5. $pagesize:每页显示文章数
  6. $pagetpl:分页模板,例:"{first}{prev}{liststart}{list}{listend}{next}{last}"

返回:
类型数组,带分页数据的文章列表

示例:

  1. <? php
  2. $tag='cid:6;field:post_title,post_content;order:listorder asc';
  3. $content=sp_sql_posts_paged($tag);
  4. $posts=$content['posts'];
  5. $pager=$content['page'];
  6. ?>

$tag规则:

cid 分类id;

field 需要取出的内容,默认取出所有信息;order排序方式,可根据任何取出的字段排序,默认为按发布时间排序。

field可选参数:

term_id 文章分类id

post_author 文章作者id,后台管理员,对应于表users里的ID;

post_keywords

post_date 文章发布日期 格式2014-01-01 00:00:00

post_content 文章内容

post_title 文章标题

post_excerpt 文章摘要

post_modified 文章更新日期 格式2014-01-01 00:00:00

smeta 文章扩展属性,以json格式保存,如属性thumb文章缩略图

user_nicename 管理员昵称

user_email 管理员邮箱

模板中用法:

  1. <php>
  2. $content=sp_sql_posts_paged('cid:6;field:post_title,post_content;order:listorder asc');
  3. </php>
  4. <foreach name="content['posts']" item="vo"> /* 遍历数组 */
  5. {$vo.term_id }<br>
  6. {$vo.post_author }<br>
  7. {$vo.post_keywords }<br>
  8. {$vo.post_date }<br>
  9. {$vo.post_content }<br>
  10. {$vo.post_title }<br>
  11. {$vo.post_excerpt }<br>
  12. {$vo.post_modified}<br>
  13. {$vo.user_nicename }<br>
  14. {$vo.user_email }<br>
  15. <php>
  16. $smeta=json_decode($vo['smeta'],true);/* 把smeta转化成数组 */
  17. </php>
  18. <img src="/data/upload/{$smeta.thumb}"/>
  19. </foreach>
  20. <div>{$content.page}</div><!--分页-->