申永祥学习室

phpcms2008《GET标签》调用方法大全

SEO > 网站建设 > PhpCms > 申永祥 发布于 2013年02月22日 | 阅读(1325)

接触phpcms2008后感觉这套程序功能特别方便,不但可以调用本系统内的数据而且还可以调用外部数据库的数据,对于phpcms其中有一个重要的标签get(只适用熟悉SQL的用户使用),对于get的标签可以调用出数据库所有想调用的数据(也可以成为万能标签),下面对get标签做了一个总结,有get标签的基本调用方法get标签的常用调用方法get标签的特殊调用方法(注意:get标签属性值必须用双引号括起来)。

一、get标签基本调用方法

(1) 调用本系统单条数据,示例(调用ID为1的信息,标题长度不超过25个汉字,显示更新日期):

{get sql="select * from phpcms_content 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 phpcms_content 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 phpcms_cotent 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个汉字,显示更新日期,带分页):

{get sql="select *from phpcms_content 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:/viewthread.php?tid={$r[tid]} 更新日期:{date('Y-m-d',$r[dateline])}
{/get}

(6) 调用外部数据,示例(调用数据源为bbs,分类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:/viewthread.php?tid={$r[tid]} 更新日期:{date('Y-m-d',$r[dateline])}
{/get}

(7) 调用ecshop数据,示例(调用数据源为ecshop,调用产品库中最新的5个产品):

{get dbsource="ecshop" sql="SELECT `goods_id`,`goods_name`,`goods_thumb` FROM `ecs_goods` ORDER BY `goods_id` DESC" rows="5" }
    产品ID:{$r[goods_id]} 名称:{$r[goods_name]} 产品图片:{$r[goods_thumb]}
{/get}

(8) 调用问答多条数据,示例(调用栏目ID为1的10条信息,标题长度不超过25,显示更新日期):

{get sql="select * from phpcms_ask" row="6"}
    标题:{$r[title]} URL:/ask/show.php?id={$r[askid]} 更新日期:{date('Y-m-d', $r[updatetime])}
{/get}

二、get标签常用调用方法

(1) 调用一个栏目下的最新,带缩略图的文章,同时调用出起内容简介(多个栏目ID调用)

{get sql="select * from phpcms_content where catid>=79 and catid<=85 and status=99 and posids=1 and `thumb`!='' order by updatetime desc" rows="10"}
    URL:{$r[url]} 标题:{str_cut($r[title], 40)} 缩略图:{thumb($r[thumb], 110, 75)} 描述:{str_cut($r[description],100)}
{/get}

  注解:(catid>=79 and catid<=85 栏目ID大于等于75并且栏目id小于等于85,也就是调用栏目ID75 76 77 78 79 80 81 82 83 84 85的文章;posids=1 文章类型为首页推荐;status=99 文章已经通过审核;`thumb`!='' 缩略图不为空,也就是必须要有缩略图;{$r[url]} 内容页的地址;{str_cut($r[title], 40)} 文章标题,长度限制为40;{thumb($r[thumb], 110, 75)} 缩略图地址 缩略图大小限制为width=110px height=75px;{str_cut($r[description],100) 文章简介调用 简介长度为100。)

(2) 调用多个栏目ID,(栏目ID为不连续ID)

{get sql="select * from phpcms_content where catid>=79 and catid<=85 or catid=95 order by updatetime desc" rows="10"}
    URL:{$r[url]} 标题:{str_cut($r[title], 38)}
{/get}

  注解:(其中使用了catid>=XX and catid<=XX 如果现在要加入catid95,那么就不能在用and了,而应该使用or。)

(3) 使用get调用 栏目名及其相对应的栏目地址

{get sql="select * from phpcms_content where catid>=52 and catid<=55 or catid=50 or catid=77 or catid=78 order by updatetime desc" rows="6"}
    栏目URL:{$CATEGORY[$r[catid]][url]} 栏目名:{str_cut($CATEGORY[$r[catid]][catname],4)} 文章URL:{$r[url]} 文章标题{str_cut($r[title], 38)}
{/get}

(4) 调用后台设置的标题颜色

{get sql="select * from 99inet_content where catid=40 and status=99 order by updatetime desc" rows="7"}
    时间:{date('m-d', $r[updatetime])} URL:{$r[url]} 判断标题颜色:{if $r[style]} {str_cut($r[title], 22)}{else}{str_cut($r[title], 22)}{/if}
{/get}

(5) 调用条数限制,limit参数

{get sql="select * from phpcms_content where catid=39 and status=99 order by updatetime desc limit 2,7"}
    时间:{date('m-d', $r[updatetime])} URL:{$r[url]} 标题:{if $r[style]}{str_cut($r[title], 22)}{else}{str_cut($r[title], 22)}{/if}
{/get}

(6) 使用get在栏目首页调用所有文章模型的文章

{get sql="SELECT contentid,catid,typeid,areaid,title,style,thumb,keywords,description,userid,updatetime,inputtime,url FROM `yimi_content` WHERE status=99 ".get_sql_catid($cid)." ORDER BY contentid DESC" rows="40"}
    URL:{$r[url]} 标题:{$r[title]}
{/get}

(7) 栏目首页调用所有子栏目内容

{get sql="SELECT * FROM `phpcms_content` c,`phpcms_content_count` n WHERE c.contentid=n.contentid AND c.`status`=99 and catid in (39,40,41,42,43,44,45,46,47,48,66,68,69,70,71,72,73,74,75,76) ORDER BY contentid DESC" rows="10"}
    URL:{$r[url]} 标题:{$r[title]}
{/get}

三、get标签特殊调用方法

(1) 调用一周内点击率排行榜,示例(调用站内点击率最高的通过审核的10条信息,标题长度不超过25个汉字):

{get sql="SELECT * FROM `phpcms_content` c,`phpcms_content_count` n WHERE updatetime>'.TIME.'-7*86400 and c.contentid=n.contentid AND c.`status`=99 and catid='$catid' '.get_sql_catid($catid).' ORDER BY n.hits DESC" rows="10"}
    URL:{$r[url]} 标题:{str_cut($r[title], 50)}
{/get}

(2) 调用一周内的评论排行榜,示例(调用站评论排行最高的通过审核的10条信息,标题长度不超过25个汉字):

{get sql="SELECT * FROM `phpcms_content` c,`phpcms_content_count` n WHERE updatetime>'.TIME.'-7*86400 and c.contentid=n.contentid AND c.`status`=99 and catid='$catid' '.get_sql_catid($catid).' ORDER BY n.comments DESC" rows="10"}
    URL:{$r[url]} 标题:{str_cut($r[title], 50)}
{/get}

(3) 调用图片推荐内容

{get sql="SELECT * FROM `phpcms_content` a, `phpcms_c_news` b WHERE a.contentid=b.contentid AND `status`=99 AND `thumb`!='' AND a.`contentid` IN(SELECT `contentid` FROM `phpcms_content_position` WHERE `posid`='10') ".get_sql_catid($catid)." ORDER BY a.contentid DESC" rows="10"}
    URL:{$r[url]} 缩略图:{thumb($r[thumb], 130, 90)} 带颜色的标题:{if $r[style]}{str_cut($r[title], 800,'')}{else}{str_cut($r[title], 800,'')}{/if}
{/get}

(4) DIGG排行榜的GET标签

{get sql="SELECT * FROM phpcms_content c,phpcms_digg d WHERE c.contentid=d.contentid AND c.status=99 ORDER BY d.supports DESC" rows="8"}
    {$r[supports]} URL:{$r[url]} 标题:{str_cut($r[title], 88)}
{/get}

(5) 只调用新闻模型且推荐ID为7的新闻

{get sql="SELECT * FROM phpcms_content c,phpcms_c_news n,phpcms_content_position p WHERE c.contentid=n.contentid and c.contentid=p.contentid and posid=7 and `status`=99 ORDER BY inputtime DESC" rows="10"}
    URL:{$r[url]} 标题:{str_cut($r[title], 88)}
{/get}

(6) 调用相关新闻

{get sql="SELECT * FROM phpcms_content c,phpcms_content_tag t WHERE c.contentid!='$contentid' and c.contentid=t.contentid and c.status=99 AND t.tag IN('.get_sql_in($r[keywords]).') ORDER BY c.contentid DESC" rows="10"}
    URL:{$r[url]} 标题:{str_cut($r[title], 88)}
{/get}

转载请注明来源:申永祥博客,(QQ/微信:790799899)原文地址:http://shenyongxiang.com/phpcms/145.html

声明:博客内容除标记原创字样以外内容,均来自网络转载,版权归原作者所有,如涉及版权问题请及时联系处理。

上一篇:没有了 下一篇:没有了