phpcms模板语法自总结例子

来源:互联网 发布:法师dpro雾化器数据 编辑:程序博客网 时间:2024/06/05 02:05

【备注1】:用{pc:get sql=””}的方式调用数据,如果该栏目有子栏目,其sql语句会查询所有子栏目的数据的;

用{pc: get sql=””}的方式调用数据,要先查询出子栏目ID,存为变量,再取,貌似不支持嵌套的子查询(例如这样的会报错:{pc:get sql="SELECT * FROM v9_news WHERE status=99 AND catidIN(SELECT `catid` FROM `v9_category` WHERE `parentid`='14') AND `id` NOT IN($str_ids_for_14_img_position) ORDER BY updatetime DESC LIMIT 0,5--" cache="3600" page="$page"} ),切记,切记!

 

但是外部数据源可以!!!例如我想调用discuz论坛的文章数据:
{pc:get sql="SELECT * FROM pre_forum_thread WHERE fid IN(SELECT fid FROM pre_forum_forum WHERE fup='38') AND digest=1 LIMIT 0,2--"cache="3600" page="$page" dbsource="discuz_db"return="data"}

无语!

【备注2】:非文章模型的文章,也是一样的调用,会自行判断该文章所属栏目的所属模型,并读取相应数据表。

 

# 前台打印数组

{php echo"<pre>";print_r($data)}

 

{pc:content action="position"posid="18" catid="9" thumb="1"order="listorder DESC"

num="1"}

{php echo '<pre>';print_r($data)}

{/pc}

 

# 从第2条数据开始调用

 {pc:content action="lists" catid="10" order="id DESC LIMIT1,4--" num="4"}

 

这样就可以从第二条开始调用数据。

其中的order="id DESC LIMIT 1,4--"里的两个数字,第1个数字1表示从第2条开始调用,第2个数字4

表示共调用4条。

 

如果改成order="id DESC LIMIT 0,4--"那么就表示从第1条开始调用,共调用4条。

如果改成order="id DESC LIMIT 2,4--"那么就表示从第3条开始调用,共调用4条。

 【严重注意】:

order="id DESC LIMIT1,4--"  中的--会注释调系统自带的LIMIT 0,20  ,但是!会造成分页有时不正常!!!有分页的时候还是建议使用标准写法:
 {pc:content action="lists" catid="10" order="id DESC" start="1" num="4"}

用start和num参数来取的话,分页才会正常!切记!切记!!

 

# 全局调用:指定栏目ulr、名称(cat_id为具体栏目ID)

<a href="{$CATEGORYS[cat_id][url]}"target="_blank">{$CATEGORYS[cat_id][catname]}</a>

 

# 缩略图

{if $val[thumb]==''}<imgsrc="statics/images/dingli/list_left_main_04.jpg"width="100"  height="75"/>{else}<img src="{thumb($val[thumb],100,75)}"border="0" alt=""/>{/if}

 

 

# 获取一个栏目ID为11的子栏目ID

{pc:get sql="SELECT `catid` FROM`v9_category` WHERE `parentid`='11'"}

{loop $data $val}

{php $catid_for_11[]=$val['catid']}

{/loop}

{/pc}

 

 

 

 

 

 

############# 取完一个头条后,下面列表为不含头条的文章 start ##############

<!--"香道"栏目头条推荐start-->

{pc:content action="position"posid="19" catid="9" thumb="1"order="listorder DESC"

num="1"}

{loop $data $r}

{php $headlines_for_9_id=$r['id']}

<span><a class="tt1"href="{$r[url]}" target="_blank">{str_cut($r['title'],54)}</a></span>

<p>{str_cut($r['description'],180)}[<ahref="{$r[url]}" target="_blank">详细</a>]</p>

{/loop}

{/pc}

<!--"香道"栏目头条推荐end-->

 

 

<!--"香道"栏目最新文章(不含以上头条,前面有子栏目名称) start-->

<div class="titlelist">

<ul>

{pc:get sql="SELECT `catid` FROM`v9_category` WHERE `parentid`='9'"}

{loop $data $val}

{php $catid_for_9[]=(isset($val['catid'])&& !empty($val['catid'])) ? $val['catid'] : 9}

{/loop}

{/pc}

           

{php $str_catid_for_9=(isset($catid_for_9) &&is_array($catid_for_9) && !empty($catid_for_9))?implode(',',$catid_for_9):9}

       

{pc:get sql="SELECT * FROM `v9_news`WHERE STATUS=99 AND catid IN ($str_catid_for_9) AND

id!='$headlines_for_9_id' ORDER BYupdatetime DESC LIMIT 0,7--"}

{loop $data $val}

                   <li>

                    <!--该文章所属栏目名start-->

                    [<a href="{$CATEGORYS[$val['catid']][url]}"target="_blank">

{$CATEGORYS[$val['catid']][catname]}</a>]

                    <!--该文章所属栏目名end-->

                   

                    <ahref="{$val['url']}">{str_cut($val['title'],50)}</a>

                </li>

{/loop}

{/pc}

         </ul>

       </div>

       <!--"香道"栏目最新文章(不含以上头条,前面有子栏目名称) end-->

#############取完一个头条后,下面列表为不含头条的文章end ##############

 

 

 

 

### 读取图片模型的文章的第1张图和说明

   <!--"唐卡赏析"栏目(注意:此栏目为图片模型!) start-->

   <div class="tk_part_03">

     <div class="title"> <img width="46"height="36"src="{APP_PATH}statics/images/dingli/tk_title_01.jpg">

       <div class="titlestyle"><ahref="{$CATEGORYS[54][url]}"target="_blank">{$CATEGORYS[54][catname]}</a></div>

       <div class="titlestyle_more"><a href="{$CATEGORYS[54][url]}"target="_blank">更多>></a></div>

     </div>

     <ul>

     {php $img = array() }

       {pc:content action="lists" catid="54" order="idDESC" num="6" moreinfo="1"}

       {loop $data $r}

 

       <!--将数据库文本字段中供日后计算而进行的代码字符串按照 PHP 代码来计算 ( php语法:语言构造器eval ) start-->

       {php $img= string2array($r[pictureurls])}

       <!--将数据库文本字段中供日后计算而进行的代码字符串按照 PHP 代码来计算 ( php语法:语言构造器eval ) end-->

       

           <li>

           <a href="{$r['url']}" target="_blank"> <imgsrc="{thumb($img[0][url],130,161)}" border="0"alt=""/></a>

           <a href="{$r['url']}"target="_blank">{str_cut($img[0][alt],30)}</a>

           </li>

       {/loop}

       {/pc}

     </ul>

   </div>

   <!--"唐卡赏析"栏目(注意:此栏目为图片模型!) end-->

 

 

原创粉丝点击