一、SEO优化:

  1. 获取栏目的关键字:{$SEO['keyword']}
  2. 获取栏目的描述:{$SEO['description']}
  3. 判断栏目的title是否存在或为空,如果是的话,则用站点的title替代 :
  4. {if isset($SEO['title']) && !empty($SEO['title'])}{$SEO['title']}{/if}{$SEO['site_title']}

二、模板加载:

  1. {template "content" , "header_index"}
  2. * header_index 要加载的模板名称。
  3. * 该标签只能加载自定义的模板,对于预定义好的模板是不能进行加载的。
  4. * 预定义的模板名称:
  5. category_ 栏目页模板的名称都是如此命名
  6. list_ 列表页的模板都是如此命名
  7. article_ 内容页的模板都是如此命名
  8. index.html 首页模板的命名
  9. default.html 超首模板的命名
  10. page_ 单页面的模板都是如此命名
  11. show_ 内容页都是如此命名

三、PC 内容查询标签:

  1. 一般格式的查询:
  2. {pc:content action="lists" catid="$catid" num="5" order="listorder,id DESC" page="$page" thumb="1" start="5"}
  3. {loop $data $r}
  4.  
  5. {/loop}
  6. {/pc}
  7.  
  8. * action 规定生成的动作,默认的是lists。如果取值 position,表示读取推荐位中内容。那么catid就要改成了posid
  9. * catid 栏目ID,规定从哪个栏目中抽取数据。
  10. * num 表示生成的数据条目的数量。
  11. * order 表示排序的方式,DESC为降序,ASC为升序。
  12. * page 如果指定了改属性,表示有分页。最终的分页数据则有分页标签进行调用。
  13. * thumb 表示内容是否有缩略图。
  14. * start 表示起始的位置。
  15.  
  16. 万能查询语句:
  17. 万能查询实际上就是PC标签+SQL语言来直接对数据表进行查询。
  18. {pc:get sql="select catname from v9_category where catid='$catid'" return "data"}
  19. {loop $data $r}
  20. {/loop}
  21. {/pc}
  22.  
  23. * sql 中保存的是要执行的SQL语句。
  24. - catname 要查询的字段
  25. - v9_category 表名
  26. - catid 记录的关键字段。
  27. * data中保存的是返回到的数据,这些数据都会以一个数组的形式保存到$data中,然后以$r[catname]的方式进行调用。

四、页面相关的常用标签:

  1. {siteurl($siteid)} 显示首页的URL地址。
  2. {$catid} | {$CAT[catid]} 显示当前栏目的ID
  3. {$catname} | {$CAT[catname]} 显示栏目的名称(中文)。
  4. {$catdir} | {$CAT[catdir]} 显示栏目的名称(英文)。
  5. {$parentid} 拿到父栏目的id
  6. {$top_parentid} 拿到顶级栏目的id
  7. {$inputtime} 拿到文章输出时间
  8. {$title} 拿到文章的标题
    {$id}        拿到文章的文章ID
    {$modelid} 拿到模型的模型ID
  9.  
  10. {catpos($catid)} 显示面包屑导航。
  11. {$content} 加载内容。
  12. {$page} 显示分页。
  13.  
  14. *注:{ } 该符号专用于页面展示标签数据时使用。运算判断无需添加。
  15.  
  16. =========== 依附于有数据 $data的标签 ================
  17. {$r[title]} 显示文章的标题。
  18. {str_cut($r[title],30,'.....')} 显示裁剪后的标题。
  19. {$r[url]} 显示文章的链接。
  20. {$r[thumb]} 显示文章的缩略图。
  21. {$r[style]} 拿到内嵌样式
  22. {thumb($r[thumb],90,90)} 显示裁剪后的缩略图。
  23. {date("y-m-d h:m:s",$r[inputtime])} 格式化时间输出。

五、广告位调用:

  1. {loop $pinfo $p}
  2. document.write('<li><a href="{$p['setting'][1]['linkurl']}" class="fl" target="_blank">{$p['name']}</a><em class="fr">{$p['setting'][1]['title']}</em></li>');
  3. {/loop}
  4.  
  5. {loop $pinfo $p}
  6. document.write('<a href="{$p['setting'][1]['linkurl']}" target="_blank" title="{$p['setting'][1]['alt']}"><img src="{$p['setting'][1]['imageurl']}" alt="{$p['setting'][1]['alt']}"
         height="{$height}" width="{$width}"/></a>');
  7. {/loop}

六、基础语法:

  1. 定义变量 {php $num=0}
  2. * 注意有些变量是系统自定义的,例如:$catid $CATEGORYS $parentid 等。
  3. 判断 {if $num==0}
  4. 双分支判断 {if $num==0} {else} {/if}
  5. 结合变量来控制列表生成数量:
  6. {php $num=0}
  7. {pc:content action="lists" catid="67" num="30" order="listorder , id DESC" page="$page"}
  8. {loop $data $r}
  9. {php $num++}
  10. <li> <a href="{$r[url]}" target="_blank">{$r{title}}</a></li>
  11. {if $num%5==0}<hr />{/if}
  12. {/loop}
  13. {/pc}

七、实例与技巧:

#1 loop中拿到文章的属性:

  1. {pc:content action="position" posid="14" order="listorder DESC,id DESC" num="5"}
  2. {loop $data $r}
  3. $r[catid] //当前文章所属栏目id
  4. $r[catdir] // 当前文章所属栏目英文名称
  5. $r[catname] //当前文章所属栏目中文名称
  6.  
  7. {/loop}
  8. {/pc}

#2 PC标签的三种用处:

  1. 循环列表:
  2. {pc:content action="lists" catid = }
  3. 循环推荐位
  4. {pc:content action="position" posid = }
  5. 循环栏目:
  6. {pc:content action="category" catid=}

#3 根据栏目名称获得栏目ID

  1. <?php
  2. $result = array();
  3. $catList = array();
  4. foreach ($CATEGORYS as $key=>$val) {
  5. foreach ($val as $key1=>$val1) {
  6. if($key1 == 'catdir'){
  7. $result[$key] = $val[$key1];
  8. }
  9. }
  10. }
  11. foreach ($result as $a=>$val){
  12. $catList[$val] = (String)$a;
  13. }
  14. ?>
  15. //调用方法:$catList['categoryName']

#4 CATEGORYS数组实例使用

  1. * explode -- 将字符串转换为数组
  2. * empty -- 判断是否为空
  3. * array_keys -- 以参数数组的“键”组成一个新的数组返回。
  4. * end -- 返回数组最后一个数组元素。
  5.  
  6. <ul class="clearfix gamedata-list">
  7. <?php
  8. $strchildid = $CATEGORYS[$catid]['arrchildid'];
  9. $arrchildid = explode(',',$strchildid);
  10. if(!empty($arrchildid)){
  11. foreach($arrchildid as $v){
  12. if($v == $catid) {
  13. countinue;//过滤自己
  14. }else if($CATEGORYS[$v]['parentid'] != $catid){
  15. countinue;//过滤非直接子类
  16. }else{
  17. ?>
  18. <li class="tit newplayer nl_{$CATEGORYS[$v]['catdir']}"><span></span>{$CATEGORYS[$v]['catname']}</li>
  19. <li class="main-text">
  20. <?php
  21. $strchildid2 = $CATEGORYS[$v]['arrchildid'];
  22. $arrchildid2 = explode(',',$strchildid2);
  23. if(!empty($arrchildid2)){
  24. foreach($arrchildid2 as $v2){
  25. if($v2 == $v) {
  26. countinue;//过滤自己
  27. }else{
  28. ?>
  29.  
  30. <dl>
  31. <dt><span></span>{$CATEGORYS[$v2]['catname']}:</dt>
  32. <dd>
  33. {pc:content action="lists" catid="$v2" num="20" order="listorder DESC,id DESC"}
  34. {php $e= end(array_keys($data))}
  35. {loop $data $key $r}
  36. <a href="{$r[url]}" target="_blank">{$r[title]}</a>
  37. {if $key != $e}
  38. <span>|</span>
  39. {/if}
  40. {/loop}
  41. {/pc}
  42. </dd>
  43. </dl>
  44.  
  45. <?php
  46. }
  47. }
  48. }
  49. }
  50. }
  51. }
  52. ?>
  53. </li>
  54. </ul>

#5 pc标签使用示例

  1. <div class="gamedata-content">
  2. {pc:content action="category" catid="$catList['gamedata']" order="listorder DESC" num ="100" }
  3. {loop $data $r}
  4. <h3 class="gamedata-title">{$r[catname]}</h3>
  5. <ul class="gamedata-content-list">
  6. {pc:content action="category" catid="$r[catid]" order="listorder DESC" num="500" }
  7. {loop $data $s}
  8. <li>
  9. <dl class="clearfix">
  10. <dt>{$s[catname]}<i></i></dt>
  11. <dd>
  12. {pc:content action="lists" catid="$s[catid]" num="1000" order="listorder,id DESC"}
  13. {php $e= end(array_keys($data))}
  14. {loop $data $key $v}
  15. <a href="{$v[url]}" target="_blank">{$v[title]}</a>
  16. {if $key != $e}
  17. <span>|</span>
  18. {/if}
  19. {/loop}
  20. {/pc}
  21. </dd>
  22. </dl>
  23. </li>
  24. {/loop}
  25. {/pc}
  26. {/loop}
  27. {/pc}
  28. </div>

八、CATEGORYS 常用命令:

  1. $CATEGORYS(栏目命令) 标签
  2. $CATEGORYS是一个二维数组,它用于保存当前栏目的相关信息。
  3. $CATEGORYS[65][catname]返回指定栏目的栏目名称
  4. $CATEGORYS[$catid][catid] 栏目ID
  5. $CATEGORYS[$catid][module] 栏目所在的模块
  6. $CATEGORYS[$catid][type] 栏目类型
  7. $CATEGORYS[$catid][modelid] 栏目所属模型id
  8. $CATEGORYS[$catid][catname] 栏目名称
  9. $CATEGORYS[$catid][style] 栏目名称样式
  10. $CATEGORYS[$catid][image] 栏目图片
  11. $CATEGORYS[$catid][catdir] 栏目路径
  12. $CATEGORYS[$catid][url] 目录url
  13. $CATEGORYS[$catid][parentid] 栏目的父id
  14. $CATEGORYS[$catid][arrparentid] 所有上级栏目ID
  15. $CATEGORYS[$catid][parentdir] 父栏目的路径
  16. $CATEGORYS[$catid][child] 是否有子栏目
  17. $CATEGORYS[$catid][arrchildid] 栏目的所有子栏目id
  18. $CATEGORYS[$catid][items] 栏目信息数
  19. $CATEGORYS[$catid][ismenu] 栏目是否显示导航
  20. {$CATEGORYS[$catid][description]} 栏目描述
  21. {$CATEGORYS[$catid][hits]} 栏目点击数
  22. {$CATEGORYS[$parentid][catid]} 父栏目ID
  23. {$CATEGORYS[$parentid][catname]} 父栏目名称
  24. {$CATEGORYS[$top_parentid][catid]} 顶级栏目ID
  25. {$CATEGORYS[$CATEGORYS[$CAT[parentid]][parentid]][catname]} 上上级栏目名称
  26. {$CATEGORYS[$CATEGORYS[$CAT[parentid]][parentid]][url]} 上上级栏目链接

PHPCMS 标签与示例的更多相关文章

  1. phpcms标签整理_当前栏目调用

    phpcms标签整理_当前栏目调用 转载 **//SQL语句调用: {pc:get sql="select * from phpcms_category where catid in($ca ...

  2. java continue break 关键字 详解 区别 用法 标记 标签 使用 示例 联系

    本文关键词: java continue break 关键字 详解 区别  用法 标记  标签 使用 示例 联系   跳出循环 带标签的continue和break 嵌套循环  深入continue ...

  3. JSTL中forEach标签应用示例【转】【补】

    forEach样例 <%@ page language="java" import="java.util.*" pageEncoding="ut ...

  4. phpcms 标签

    都说pc标签{pc:content参数名="参数值"参数名="参数值"参数名="参数值"} 但是 参数名对应的具体参数值有那些,菜鸟就不知道 ...

  5. jsp的三种自定义标签 写法示例

    1.自定义方法标签 引入方式示例: <%@ taglib prefix="fns" uri="/WEB-INF/tlds/fns.tld" %> 写 ...

  6. 让pre标签自动换行示例代码

    pre 元素可定义预格式化的文本.被包围在 pre 元素中的文本通常会保留空格和换行符.而文本也会呈现为等宽字体. <pre> 标签的一个常见应用就是用来表示计算机的源代码.对于技术博客经 ...

  7. PHPCMS标签:get标签

    GET标签源自于PHPCMS 2008版,其使用SQL语句直接获取数据的特性,成为大家制作模板的首选. 在V9中这样强大的工具也得到保留下来. GET标签使用方式如下: {pc:get sql=&qu ...

  8. PHPCMS标签大全

    {$head[title]} 页面标题,用法: {$phpcms[sitename]} 网站名称 用法: {$head[keywords]} 要害字 用法: {$head[description]} ...

  9. phpcms 标签解析

    phpcms 每个pc标签对应modules控制器下一个 tag.class类 比如 {pc:content action="position" posid="2&quo ...

随机推荐

  1. 微软四十周年 Microsoft’s 40th anniversary

    比尔-盖茨在4月3日给微软全体员工写了这封邮件,原文是英文,我们翻译了中文.图片是后加上的. 明天将是特殊的一天:微软的40周年纪念日. Tomorrow is a special day: Micr ...

  2. C#Light 再推荐,顺便介绍WP8 功能展示项目

    由于在项目中验证了C#Light脚本,C#Light的健壮和稳定程度已经得到了很大的提升. 现在可以更好的把C#Light介绍给大家使用,同时也有更多的自信,告诉大家这是一个已经具有商业价值的类库. ...

  3. Fix catalyst driver in Ubuntu 13.04 / 13.10

    Fix catalyst driver in Ubuntu 13.04 / 13.10(墙外文章备份) 1. Introduction I found lots of people strugglin ...

  4. statcounter统计的浏览器市场占有率

      Source: StatCounter Global Stats - Browser Market Share

  5. IOS Animation-CAKeyframeAnimation例子(简单动画实现)

    在阅读本文之前,可以看看 CABasicAnimation的例子 也可以看看IOS Animation-CABasicAnimation.CAKeyframeAnimation详解&区别&am ...

  6. 将图片的二进制字节 在HTML页面中显示

    两种方法: 后端的一般处理程序:Imge.ashx using System; using System.Collections.Generic; using System.Linq; using S ...

  7. Chrome清除dns缓存

    Chrome清除dns缓存 为了加快访问速度,Google Chrome浏览器采用了预提DNS记录,在本地建立DNS缓存的方法,加快网站的连接速度.你在谷歌Chrome浏览器的地址栏中输入about: ...

  8. hibernate(四) 双向多对多映射关系

    序言 莫名长了几颗痘,真TM疼,可能是现在运动太少了,天天对着电脑,决定了,今天下午花两小时去跑步了, 现在继上一章节的一对多的映射关系讲解后,今天来讲讲多对多的映射关系把,明白了一对多,多对多个人感 ...

  9. UML基础系列:用例图

    1. 概述 用例图(Use Case Diagram)描述“用户.需求.系统功能单元”之间的关系,是参与者所能观察和使用到的系统功能模型图. 用例图用于需求分析阶段 用例图包含6个基本元素:参与者(A ...

  10. photoshop学习目录

    前面的话 前端工程师最基本的工作是切图.photoshop用的6不6,对于工作效率有很大的影响.小火柴将前端工程师需要掌握的photoshop的知识和技能进行了梳理和归纳,总结成以下目录 目录 前端工 ...