
Phpcms 的标签系统是模板开发中非常实用的功能,通过标签可以快速调用内容、栏目、会员等数据。掌握标签的使用和自定义方法,能大幅提升开发效率。
一、Phpcms 常用内置标签调用方法
Phpcms 使用 {pc:标签名 参数} 语法来调用数据,结束用 {/pc}。常见标签如下:
content 标签:用于调用文章内容例如:调用最新10条新闻{pc:content action=”lists” catid=”12″ num=”10″ order=”id DESC”}{loop $data $r}{$r[title]}{/loop}{/pc}get 标签:执行自定义 SQL 查询{pc:get sql=”SELECT * FROM v9_news WHERE status=99″ num=”5″}{loop $data $v}{$v[title]}{/loop}{/pc}block 标签:调用后台“碎片管理”中的静态块{pc:block pos=”index_banner”}{/pc}
标签中的变量通过 {loop} 循环输出,$data 是默认返回的数据数组。
二、自定义标签的创建与调用
当内置标签无法满足需求时,可创建自定义标签。步骤如下:
立即学习“PHP免费学习笔记(深入)”;
创建标签函数文件在 phpcms/modules/content/classes/ 目录下新建一个类文件,如 my_tags.class.php,内容示例:
class my_tags { function __construct() { $this->db = pc_base::load_model(‘content_model’); } // 自定义方法:获取指定分类的热门文章 public function hot_articles($params) { $catid = intval($params[‘catid’]); $num = intval($params[‘num’]); $this->db->set_model(1); // 设置模型ID $data = $this->db->listinfo(“status=99 AND catid=$catid”, ‘views DESC’, 1, $num); return $data; }}
在模板中调用自定义标签使用 pc 标签语法,module 指向模块,action 指向方法名:{pc:content action=”hot_articles” catid=”13″ num=”8″ module=”my”}{loop $data $r}{$r[title]}{/loop}{/pc}
注意:module=”my” 对应的是 my_tags.class.php 中的 “my”,系统会自动拼接 _tags.class.php。
三、调试与注意事项
自定义标签出错时,可检查以下几点:
类名必须为文件名去掉 _tags.class.php 后的部分,且首字母大写方法必须声明为 public确保缓存已更新(可删除 caches 文件夹下的编译模板)SQL 查询中注意表前缀,建议使用模型操作
基本上就这些。掌握标签机制后,你可以灵活扩展 Phpcms 的数据调用能力,不复杂但容易忽略细节。

评论(0)