首页 > CMS > PhpCMS > 正文

phpcms v9中模板标签使用及联动菜单

2024-09-10 07:15:36
字体:
来源:转载
供稿:网友

调用根目录下phpcms/template/content/header文件:{template "content","header"} 

字符集gbk或者utf-8:{CHARSET} 

标题和标题seo优化:

{if isset($SEO['title']) && !empty($SEO['title'])}{$SEO['title']}{/if}{$SEO['site_title']}{$SEO['keyword']}{$SEO['description']}

地址替换为根目录下/statics/css:{CSS_PATH} 

地址替换为根目录下/statics/js:{JS_PATH}

{pc:content action="position" posid="9" order="id" num="10" cache="3600"} 

pc标签{pc:content 参数名="参数值"参数名="参数值"参数名="参数值"} 

{loop $data $k $v} <li><a href="{$v[url]}">{$v[title]}</a></li>{/loop} 

pc标签值

action="position"--------------对话框的类型=“内容推荐位列表”posid="9"----------------------推荐位ID="9"order="id"---------------------排序类型="id"num="10" ----------------------数据调用数量="10"cache="3600"-------------------缓存="3600"毫秒{get_siteid()}{IMG_PATH}action="hits" 排行,热点等action="lists" 主要用于列表等。catid="$catid" 当前栏目ID 指定数字,即为指定的栏目num="" 调用文章的数量order="id DESC" 按ID降序排列order="id ASC" 按ID升序排列"views DESC" sort="""1" 缩略图return=""page="$page" 需要分页 

每当列表几行的时候出现一次这个

{if $num%2==0} {/if} 

循环标签:

{loop $data $r} {/loop}{loop $info $r} {/loop} 

日期-------------{date('Y-m-d H:i:s',$r[inputtime])} 

文章链接------{$r[url]} 

文章标题------{$r[title]} 

标题截取------{str_cut($r[title],40,'...')} 

缩略图---------loop是info的时候用 {thumb($r[thumb],110,0)} loop是data的时候用{thumb($v[thumb],90,0)} 

分页标签------{$pages} 

文章页标签

标题-------{$title}内容-------{$content}日期-------{$inputtime}来源-------{$copyfrom}点击数------<span id="hits"></span> 

<script language="JavaScript" src="{APP_PATH}api.php?op=count&id={$id}&modelid={$modelid}"></script> 

网站首页----------------{siteurl($siteid)} 

当前位置----------------{catpos($catid)} 

栏目名称----------------{$CAT[catname]} 

栏目拼音----------------{$CAT[letter]} 

栏目链接----------------{$CAT[url]} 

父栏目名称--------------{$CATEGORYS[$CAT[parentid]][catname]} 

父栏目链接--------------{$CATEGORYS[$CAT[parentid]][url]} 

上上级栏目名称--------{$CATEGORYS[$CATEGORYS[$CAT[parentid]][parentid]][catname]} 

上上级栏目链接--------{$CATEGORYS[$CATEGORYS[$CAT[parentid]][parentid]][url]} 

一级父栏目列表:

  1. {pc:content action="category" catid="0" num="34" siteid="$siteid" order="listorder ASC"} {loop $data $r} <li><a href="{$r[url]}">{$r[catname]}</a></li> 

phpcms v9联动菜单的调用方法_详解get_linkage函数:

{get_linkage($areaid,1,' >> ',1)}

显示效果:PHPCMS吧 >> 模板下载 >> PHPCMS模板 [字段名字为 areaid]

如果你要在列表页或者其他地方调用,除了内容页,他们有个共同点,都是在 loop 循环体里.变量书写格式就需要修改,比如:

{get_linkage($r['areaid'],1,' >> ',1)}

当然这个 $r 也不是绝对的.要看你的loop 是如何写的.

{loop $data $n $r} 如果是这样写的,就是 $r['areaid'] .

另外必须保证此字段被正确读取有值,下面是global.func.php文件里函数get_linkage :

  1. /** 
  2. * 通过id获取显示联动菜单 
  3. * @param $linkageid 联动菜单ID 
  4. * @param $keyid 菜单keyid 
  5. * @param $space 菜单间隔符 
  6. * @param $result 递归使用字段1 
  7. * @param $infos 递归使用字段2 
  8. */ 
  9. function get_linkage($linkageid$keyid$space = '>'$type = 1, $result = array(), $infos = array()) { 
  10. if($space=='' || !isset($space))$space = '>'
  11. if(!$infos) { 
  12. $datas = getcache($keyid,'linkage'); 
  13. $infos = $datas['data']; 
  14. if($type == 1 ) { 
  15. if(array_key_exists($linkageid,$infos)) { 
  16. $result[]=$infos[$linkageid]['name']; 
  17. return get_linkage($infos[$linkageid]['parentid'], $keyid$space$type$result$infos); 
  18. else { 
  19. if(count($result)>0) { 
  20. krsort($result); 
  21. $result = implode($space,$result); 
  22. return $result//Vevb.com 
  23. else { 
  24. return $result
  25. else { 
  26. return $infos[$linkageid]['name']; 

共有六个参数,尤其是前两个,不要搞颠倒了,$linkageid, $keyid,第一个$linkageid是菜单id,你发布的时候选择的最终极菜单id,$keyid是菜单keyid,后台默认的联动菜单PHPCMS吧的keyid就是1.有点绕口,确实,这俩菜单id是一回事,但是他们的层级不一样.keyid就是最大的那个父id,linkageid是子级id.第三个$space就是连接符号,第四个$type就是调用内容,如果是1就调用完整的,如果设置为0就调用最终极的,即如果是0就只显示PHPCMS模板,默认为1的.

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表