您的位置:首页 > 编程语言 > PHP开发

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

2012-03-20 10:29 344 查看
{template "content","header"}

调用根目录下phpcms\template\content\header文件

{CHARSET}

字符集 (gbk或者utf-8)

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

标题和标题seo优化

{CSS_PATH}

地址替换为根目录下\statics\css

{JS_PATH}

地址替换为根目录下\statics\js

{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]}

一级父栏目列表

{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 :

/**

* 通过id获取显示联动菜单

* @param $linkageid 联动菜单ID

* @param $keyid 菜单keyid

* @param $space 菜单间隔符

* @param $result 递归使用字段1

* @param $infos 递归使用字段2

*/

function get_linkage($linkageid, $keyid, $space = '>', $type = 1, $result = array(), $infos = array()) {

if($space=='' || !isset($space))$space = '>';

if(!$infos) {

$datas = getcache($keyid,'linkage');

$infos = $datas['data'];

}

if($type == 1 ) {

if(array_key_exists($linkageid,$infos)) {

$result[]=$infos[$linkageid]['name'];

return get_linkage($infos[$linkageid]['parentid'], $keyid, $space, $type, $result, $infos);

} else {

if(count($result)>0) {

krsort($result);

$result = implode($space,$result);

return $result;

}

else {

return $result;

}

}

} else {

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的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: