phpcms v9二次开发及使用中各种问题解决方案,循环序号控制标题长度,phpcms v9二次开发及使用中各种问题解决方案(一).
模板调用
1、内容标签,序号123456789的调用?
{pc:content action="lists" catid="$catid" order="id DESC" num="10"}
{loop $data $k $v}
{$n}{str_cut($v['title'],44,'')}
{/loop
//或者
{php $j=1;}
{pc:content action="lists" catid="$catid" order="id DESC" num="10"}
{loop $data $v}
{php echo $j}{str_cut($v['title'],44,'')}
{$j++}
{/loop}
2、文章列表标题显示长度(或者叫字数)的控制,不管是标题还是其它,都可以利用strcut函数进行截取,用法如下:
{strcut($v['title'],40,'')} 向后截取,{str_cut($v['title'],40,'')} 向前截取,这个就是剪切文字长度的,如果你不想显示三个点,就是在40(剪切的字符数)后面加上逗号(,),再加上引号内容为空,如果想变成别的,比如来个❤型之类,那就在引号内加上❤型,gbk一个汉字为2字符,utf版本一个汉字占用3个字符,注意一下编码再定剪切的字符数.
3、在首页或列表页显示文章详细内容
moreinfo=1
4、显示某些指定栏目内的最新文章
{pc:get sql="SELECT * FROM phpcms_news WHERE catid IN(12,13,14,15,16,17,18) ORDER BY id DESC" num="10" return="data"}
{loop $data $k $r}
[{$CATEGORYS[$r[catid]][catname]}]{$r[title]}
{/loop}
{/pc}
5、判所在栏目是否为顶级栏目,有子栏目.
{if $top_parentid}{/if}
6、点击量调用10、花括号的注意,为了不与模板解析冲突,花括号应该分成2行写,例如:
{} //错误
{ 正确
}
7、首页默认幻灯焦点不显示,文件名大小写原因造成的,解决方法:
文件/statics/js/jquery.sGallery.js 修改jquery.sgallery.js
8、不同的会员模型调用不同模板
打开phpcms/modules/member/index.php 在第30行找到 include template('member', 'index');修改为:
if($memberinfo[modelid]==10){
include template('member', 'index(此处为原会员模型模板)');
}
else{
include template('member', 'indexXXX(此处为另一种会员模型的模板)');
}//Cuoxin.com
9、时间格式化
格式化时间 2011-05-06 11:22:33,{date('Y-m-d H:i:s',$r[inputtime])}
格式化时间 2011年05月06日,{date('Y年m月d日',$r[inputtime])}
11、类别调用方法
{pc:content action="lists" catid="79" order="listorder DESC" num="14" }
{loop $data $n $r}
{if $TYPE[$r[typeid]][name]}[{$TYPE[$r[typeid]][name]}]{/if}{str_cut($r[title],33,'')}
{/loop}
{/pc}
12、只调用推荐的友情链接
调用所有的,在loop循环中判断elite的值,或者用get标签调用.
13、调用一级栏目
指定catid="0"
14、首页调用多栏目的推荐内容
{pc:get sql="SELECT * FROM `v9_news` a, `v9_position_data` p WHERE a.id=p.id and posid=14 AND a.catid in(6,11) ORDER BY a.updatetime DESC" num="10"}
{loop $data $r}
{$CATEGORYS[$r[catid]][catname]} {date('d', $r[inputtime])}日{$r[title]}
{/loop}
{/pc}
15、调取会员排行榜
{get sql="SELECT `userid`,`username`,`areaid`,`amount`,`point`,`modelid` FROM `phpcms_member_cache` ORDER BY `point` DESC" rows="10" }
16、if的一些用法
{if $n ==2 || $n==3 }{/if}
这是以点数来排的……,试下能不能用哈!{$r[username]}.
17、当前栏目调用父级及以下栏目信息
{php $arrchildid = $CATEGORYS[$CAT[parentid]][arrchildid]}
{pc:get sql="SELECT * FROM v9_news where catid in($arrchildid) cache="3600" page="$page" num="12" return="data"}
18、内容页调用【内容分页】的当前页如[2/20]的方法,想单独调用内容分页的{当前页}{总分页数},例如文章标题“国内经济再次腾飞[1/5]”,国内经济再次腾飞[{$page}/{$pagenumber}]
19、调用其他网站指定内容
在后台增加数据源 然后用get 调用即可
20、调用所有导航,代码如下:
{pc:content action="category" catid="0" num="25" siteid="$siteid" order="listorder ASC"}
首页{loop $data $r} | {$r[catname]}{/loop}
{/pc}
21、全站显示lists列表标签文章的点击数
普通lists标签代码(适合栏目):
{pc:content action="lists" catid="$catid" num="10" order="id DESC"}
{loop $data $r}
{php $h_md=pc_base::load_model('hits_model');$get_db=$h_md->get_one(array('hitsid'=>"c-".$modelid."-".$r[id]));$views=$get_db[views];}
点击:{$views}
{/loop}
{/pc}
首页调用因为需要模型ID的,所以需要将:
get_one(array('hitsid'=>"c-".$modelid."-".$r[id]));
改为:
get_one(array('hitsid'=>"c-1-".$r[id]));
1为当前lists调用栏目所属的模型ID,系统自带文章系统为1,自定义模型请根据你自己的修改.
$r[id] 根据实际情况修改.
22、显示全站排行榜,显示收藏统计量,代码如下:
{pc:get sql="select *,count(*) as count from phpcms_favorite where adddate>=DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) DAY) group by title order by count(*) desc" return="data" num="9"}
{loop $data $key $val}
{$val[title]} {$val[count]}
{/loop}
{/pc}
23、select的分页代码,代码如下:
{pc:content action="lists" catid="$catid" num="12" order="id DESC" return="data1" page="$page"} {loop $data $r1} {/loop}{str_replace("a href", "option value", str_replace("..", "", str_replace("", "页", str_replace("", "//", str_replace("> ", ">", $pages)))))))}{/pc}
大型站长资讯类网站! https://www.0757zz.cn