phpcms标签整理_当前栏目调用
1.phpcms v9 所有当前栏目信息标签
下面做总结,方便大家找到在内容页想调用的东西
当前栏目id: {$catid}
当前栏目名: {$CATEGORYS[$catid][catname]}
当前栏目目录名: {$CATEGORYS[$catid][catdir]}
当前栏目url: {$CATEGORYS[$catid][url]}
当前栏目位置(面包屑导航): 首页 > {catpos($catid)} 正文
当前栏目描述: {$CATEGORYS[$catid][description]}
当前栏目图片:
当前栏目的内容数: {$CATEGORYS[$catid][items]}
当前栏目的点击数: {$CATEGORYS[$catid][hits]}
当前栏目的上级栏目id: {$CATEGORYS[$catid][parentid]}
可以放在内容页的任何位置
显示效果如下:
{pc:get sql="select * from v9_category where parentid = 19 order by listorder asc limit 0,6 --"}{loop $data $v}{$v[url]}{/loop}{/pc}
2.标签phpcms v9
{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}
- {$v[title]}
-
{/loop}
pc标签值
action=”position”————-对话框的类型=“内容推荐位列表”
posid=”9″——————–推荐位ID=“9”
order=”id”——————–排序类型=“id”
num=”10″ ——————-数据调用数量=“10”
cache=”3600″—————-缓存=”3600″毫秒
{APP_PATH}—————–项目地址
{get_siteid()}—————-
{IMG_PATH}—————–
action=”hits” 排行,热点等
action=”lists” 主要用于列表等。
catid=”$catid” 当前栏目ID 指定数字,即为指定的栏目
num=”" 调用文章的数量
order=”id DESC” 按ID降序排列
order=”id ASC” 按ID升序排列
order=”views DESC”
sort=”"
thumb=”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}
点击数——”hits”>
”JavaScript” src=”{APP_PATH}api.php?op=count&id={$id}&modelid={$modelid}”>
网站首页——{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}
- {$r[catname]}
-
{/loop}
{/pc}
同级栏目列表
{pc:content action=”category” catid=”$parentid” num=”12″ siteid=”$siteid” order=”listorder ASC”}
{loop $data $r}
- {$r[catname]}
-
{/loop}
{/pc}
组图列表
{loop $photos $r}
-
{/loop}
注释:其中$photos为自定义组图字段,{$r[url]}为图片地址,{thumb($r[url], 75, 45, 0)}为图片缩略图,{$r[alt]}为图片描述
4.phpcms v9调用全站最新文章功能代码
第一步 修改 phpcms\modules\content\classes content_tag.class.php 在最后面的 } 上面添加
public function newcontent($data){
$num = intval($data['limit']) ? intval($data['limit']) : '20';
// 设置排序
switch($data['order']){
case '1':
$order = ' `id` ASC ';
break;
case '2':
$order = ' `id` DESC ';
break;
case '3':
$order = ' `inputtime` ASC ';
break;
case '4':
$order = ' `inputtime` DESC ';
break;
case '5':
$order = ' `updatetime` ASC ';
break;
case '6':
$order = ' `updatetime` DESC ';
break;
default:
$order = ' `id` DESC ';
}
if($data['catid']){
$catids = explode(',', $data['catid']);
foreach($catids as $catid){
$catid = intval($catid);
if(empty($catid))continue;
$this->set_modelid($catid);
$where = $this->category[$catid]['child'] ? ' `catid` IN ('.$this->category[$catid]['arrchildid'].')' : " `catid` = $catid";
$datas = $this->db->select($where, '*', $num, $order);
$data[$catid]['data'] = $datas;
// 记录本次的文章数
$data['num'][] = count($datas);
$model_num++;
}
}else{
$models = getcache('model', 'commons');
foreach($models as $model){
$this->db->set_model($model['modelid']);
$datas = $this->db->select('', '*', $num, $order);
$data[$model['modelid']]['data'] = $datas;
// 记录本次的文章数
$data['num'][] = count($datas);
$model_num++;
}
}
if($data){
// 获取每个模型应该截取的条数
$num = ceil($num/$model_num);
// 循环条数记录用于找出条数不满足的数量然后进行平均
$w_num = $w_num_t = '';
foreach($data['num'] as $num_t){
if($num_t < $num){
$w_num += $num-$num_t;
$w_num_t++;
}
}
// 判断是否有不满足平均数的 如果有那么就增加平均值
if($w_num_t){
$num += ceil($w_num/($model_num-$w_num_t));
}
$datas = array();
foreach($data as $r){
$r_n = '';
if(is_array($r['data']))
foreach($r['data'] as $r_t){
$datas[] = $r_t;
if(++$r_n == $num)break;
}
}
return $datas;
}else{
return false;
}
}
第二步:模板调用
其实就和默认的文章列表调用差不多
{pc:content action="newcontent" }
参数说明:
catid: 可有可无 加了就只调用指定栏目的信息 多个栏目请使用英文半角的 ,间隔
order:排序 参数值:1-7 具体的含义在代码里面很容易看明白 不祥述
num:调用数量 不指定默认调用20条