{pc:content action="lists" catid="25" num="$pagesize" page="$page" return="data"}
<ul>
{loop $data $n $r}
<li><a href="{$r[url]}">{$r[title]}</a></li>
{/loop}
</ul>
{/pc}
pc标签起作用需要在数据库module表中注册,pc:content PC 标签中{pc:}冒号之后跟随的为模块名,表示class content_tag, 前台模板文件产生的phpcms\templates\default,静态页的调试.tag标签编译后的效果,也是后台调用的方法
<?php
$content_tag = pc_base::load_app_class("content_tag", "content");
if (method_exists($content_tag, 'lists')) {
$pagesize = 4;$page = intval($page) ? intval($page) : 1;
if($page<=0){$page=1;}$offset = ($page - 1) * $pagesize;
$content_total = $content_tag->count(array('catid'=>$catid,'order'=>'id DESC','limit'=>$offset.",".$pagesize,'action'=>'lists',));
$pages = pages($content_total, $page, $pagesize, $urlrule);
$data = $content_tag->lists(array('catid'=>$catid,'order'=>'id DESC','limit'=>$offset.",".$pagesize,'action'=>'lists',));
}
?>
标签中的参数变量是前提控制类提供,参数的调用,写page参数是会调用count($data)
{pc:comment action="get_comment" commentid="$commentid"}
{php $comment = $data;}
{/pc}
该标签解析类是在每个模块下面的classes/的以“模块名_tag.class.php”的文件
为什么用模板标签?需要一些参数来控制页面的显示效果,参数自己可以手动加,如num,cache,page,用sql标签表前缀用phpcms_系统智能替换数据库前缀{pc:get sql="SELECT * FROM phpcms_wechenews ORDER BY id desc" num="7" start="23"}
{loop $data $r}
<li>[{getMore($r[catid])}]<a href="{$r[url]}" class="title" title="{$r[title]}">{str_cut($r[title],32,'')}</a></li>
{/loop}
num调用条数 start起始输出的位置v9的标签函数像2008那样支持limit="0,5"这样的写法
{pc:content action="limit" type="lists" catid="54" thumb="" order="listorder DESC" step="3,5"}
{loop $data $r}
<li>·<a href="{$r[url]}" title="{$r[title]}">{$r[title]}</a></li>
{/loop}{/pc}
type:定义 的是类别:可选lists或者position(目前支持普通列表和推荐位)
catid:选择 了lists的类别才需要填写这个值
position:选择了position的类别才需要填写这个值
thumb:不分类 别都可以
order:排序方式
step:传说中的limit
试验结果可行
将内容模型标签的class类文件 找出:文件地址 phpcms\modules\content\classes\content_tag .class.php
添加标签函数:
/**
* limit页标签
* @param $data
*/
public function limit($data){
$data['limit']=$data['step'];
return $this->$data['type']($data);
}
phpcmsv9调用当前栏目的同级栏目
{pc:content action="category" catid="$parentid" num="25" siteid="$siteid" order="listorder ASC"}
<ul>
{loop $data $r}
<li {if $catid==$r[catid]}class="cur_link"{/if}><a href="{$r[url]}">{$r[catname]}</a></li>
{/loop}
</ul>
{/pc}
phpcms的模板缓存
phpcms的模板文件一般放在根目录下/phpcms/templates/模块名称/xxx.html,当修改文件后,系统生成模板缓存放在/caches/caches_template/default/模块名称/xxx.php,删除缓存目录可以看最新效果