详情页

p​h​p​c​m​s​栏目调用详解

时间:2024年02月24日

编辑:佚名

1.phpcms v9 所有当前栏目信息标签
下面做总结,方便大家找到在内容页想调用的东西
当前栏目id:                       {$catid}
当前栏目名:                       {$CATEGORYS[$catid][catname]}
当前栏目目录名:               {$CATEGORYS[$catid][catdir]}
当前栏目url:                       {$CATEGORYS[$catid][url]}
当前栏目位置(面包屑导航):    首页 > {catpos($catid)}
正文 当前栏目描述:                 {$CATEGORYS[$catid][description]} 
当前栏目图片:                 <img src="{$CATEGORYS[$catid][image]}" />
当前栏目的内容数:            {$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  
调用根目录下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″毫秒
{APP_PATH}—————–项目地址
 action=”hits” 排行,热点等
action=”lists” 主要用于列表等。 
catid=”$catid” 当前栏目ID   指定数字,即为指定的栏目
num=”"  调用文章的数量
order=”id DESC” 按ID降序排列
order=”id ASC”  按ID升序排列
thumb=”1″ 缩略图
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>  
3.栏目
网站首页——{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>
{/loop}
{/pc} 
同级栏目列表 
复制代码
{pc:content action=”category” catid=”$parentid” num=”12″ siteid=”$siteid” order=”listorder ASC”} 
{loop $data $r} 
<li><a href=”{$r[url]}”>{$r[catname]}</a></li>
{/loop}
{/pc} 
复制代码
组图列表 
{loop $photos $r} 
<li><a href=”{$r[url]}”><img src=”{thumb($r[url], 75, 45, 0)}” alt=”{$r[alt]}” /></a></li>
{/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条
相关文章
猜你需要