首页 > 建站教程 > CMS教程 > phpcms >  PHPCMS学习第六天:单网页标签正文

PHPCMS学习第六天:单网页标签

二级栏目循环:
{loop $arrchild_arr $cid}
       <li{if $catid==$cid} class="cur"{/if}><a href="{$CATEGORYS[$cid][url]}">{$CATEGORYS[$cid][catname]}</a></li>
{/loop}
标题:{$title}
内容:{$content}
{catpos($catid)}                                        显示文章位置导航
{$CATEGORYS[$catid][url]}                        显示当前栏目链接
{$CATEGORYS[$catid][catname]}                显示当前栏目名称

自定义字段:  相当重要!     pc标签 需要加上 moreinfo="1"参数

列表页调用:{$r[ziduan]}
内容页调用:{$ziduan}
内容页使用PHP数组格式为:  $previous_page

GET标签示例(GET标签是phpcms的万能标签!!!  记住:SQL是万能!)

1.调用系统内单条数据,示例(调用ID为1的信息,标题长度不超过25个汉字,显示更新日期):
{get sql="select * from {$GLOBALS[PRE]}news where contentid=1" /}
   标题:{str_cut($r[title], 50)} URL:{$r[url]} 更新日期:{date('Y-m-d', $r[updatetime])}
{/get}
2.调用系统内多条数据,示例(调用栏目ID为1通过审核的10条信息,标题长度不超过25个汉字,显示更新日期):
{get sql="select * from {$GLOBALS[PRE]}news where catid=1 and status=99 order by updatetime desc" rows="10"}
   标题:{str_cut($r[title], 50)} URL:{$r[url]} 更新日期:{date('Y-m-d', $r[updatetime])}
{/get}
3.带分页,示例(调用栏目ID为1通过审核的10条信息,标题长度不超过25个汉字,显示更新日期,带分页):
{get sql="select * from {$GLOBALS[PRE]}news where catid=1 and status=99 order by updatetime desc" rows="10" page="$page"}
   标题:{str_cut($r[title], 50)} URL:{$r[url]} 更新日期:{date('Y-m-d', $r[updatetime])}
{/get}
分页:{$pages}

4.自定义返回变量,示例(调用栏目ID为1通过审核的10条信息,标题长度不超过25个汉字,显示更新日期,返回变量为 $v):
{get sql="select * from {$GLOBALS[PRE]}news where catid=1 and status=99 order by updatetime desc" rows="10" return="v"}
   标题:{str_cut($v[title], 50)} URL:{$v[url]} 更新日期:{date('Y-m-d', $v[updatetime])}
{/get}
5.调用同一帐号下的其他数据库,示例(调用数据库为bbs,分类ID为1的10个最新主题,主题长度不超过25个汉字,显示更新日期):
{get dbname="bbs" sql="select * from cdb_threads where fid=1 order by dateline desc" rows="10"}
   主题:{str_cut($r[subject], 50)} URL:http://bbs.phpcms.cn/viewthread.php?tid={$r[tid]} 更新日期:{date('Y-m-d', $r[dateline])}
{/get}
6.调用外部数据,示例(调用数据源为bbs(discuz),分类ID为1的10个最新主题,主题长度不超过25个汉字,显示更新日期):
{get dbsource="bbs" sql="select * from cdb_threads where fid=1 order by dateline desc" rows="10"}
   主题:{str_cut($r[subject], 50)} URL:http://bbs.phpcms.cn/viewthread.php?tid={$r[tid]} 更新日期:{date('Y-m-d', $r[dateline])}
{/get}
7.取出第2条到第10条记录,按评论多少排序,比如有些布局第一条使用缩略图,或者第一条是头条,其他是文章列表会用到:
{get sql="select A.contentid,A.catid,A.title,A.thumb,A.description,A.url,A.status,A.updatetime,B.contentid,B.hits,B.comments from `{$GLOBALS[PRE]}news` as A INNER JOIN `{$GLOBALS[PRE]}news_count` as B ON A.contentid=B.contentid and A.status=99 and LENGTH(A.thumb)>0 order by B.comments desc LIMIT 2,7"}-->
  {$r[comments]}人参与评论</span>·<a href="{$r[url]}" title="{$r[title]}">{str_cut($r[title], 28)}</a>
{/get}
关键点就在 order by B.comments desc LIMIT 3,7 (表示从第3条记录开始,向下读取7条数据)

PHPCMS模版里可以直接写PHP语句的:
如:    {php $j=0}     {php echo p('hellow world!');}