Maison > Article > développement back-end > Solutions à divers problèmes de développement secondaire et d'utilisation de phpcms v9 (2)
Solutions à divers problèmes dans le développement secondaire et l'utilisation de phpcms v9 (2)
Appel de modèle
1. Balise de contenu, appel du numéro de série 123456789 ?
{pc:content action="lists" catid="$catid" order="id DESC" num="10"} {loop $data $k $v} <li>{$n}<a href="{$v<a href="http://www.lai18.com/content/%7D" >{str_cut($v['title'],44,'')}<="" a><="" li> {/loop}
<a href="http://www.lai18.com/content/%7D" >{str_cut($v['title'],44,'')}<="" a><="" li>{php $j=1;} {pc:content action="lists" catid="$catid" order="id DESC" num="10"} {loop $data $v} <li>{$j}<a href="{$v[url]}">{str_cut($v['title'],44,'')}</a></li> {$j++} {/loop}
511e5c11c1bd72483638410aef00613b{str_cut($v['title'],44,'') }774be50b51d88ad7431c71939867b1059df081d7067e5859b4abcc94cca354a3 2. Contrôle de la longueur d'affichage (ou du nombre de mots) du titre de la liste d'articles
Qu'il s'agisse du titre ou autre, vous pouvez utiliser la fonction strcut pour intercepter, utilisation Comme suit :
{strcut($v['title'],40,'')} 向后截取,{str_cut($v['title'],40,'')} 向前截取。 这 个就是剪切文字长度的,如果你不想显示三个点,就是在40(剪切的字符数)后面加上逗号(,), 再加上引号内容为空,如果想变成别的,比如来个❤型之类, 那就在引号内加上❤型。gbk一个汉字为2字符, utf版本一个汉字占用3个字符,注意一下编码再定剪切的字符数。
3. Bouclez les noms des colonnes de deuxième et troisième niveaux
4. Affichez le contenu détaillé de l'article sur la page d'accueil. ou page de liste
moreinfo=1
5, affichez les derniers articles dans certaines colonnes désignées
{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} <li><a href="{$CATEGORYS[$r[catid]][url]}">[{$CATEGORYS[$r[catid]][catname]}]</a><a href="{$r[url]}" target="_blank">{$r[title]}</a></li> {/loop} {/pc}
6 Cliquez sur la liste de classement pour spécifier l'ID de la chaîne
7. . Appelez le lien de la colonne individuellement
8. Jugez la colonne S'il s'agit d'une colonne de niveau supérieur (avec des sous-colonnes)
{if $top_parentid}{/if}
9. Remarque sur les accolades
Afin de ne pas entrer en conflit avec l'analyse du modèle, les accolades doivent être divisées en 2. Écrites en lignes, par exemple :
{} //错误 { 正确 }
f2a43a07a7c1b8b6d7a194c006cb5581{str_cut($v['title'],44,'')}495da78cbecab0add66212161aab92b0b60d5bd23f5e813ebcb6d4be9c7cbeea10、首页默认幻灯焦点不显示
文件名大小写原因造成的,解决方法:
文件\statics\js\jquery.sGallery.js 修改jquery.sgallery.js
11、不同的会员模型调用不同模板
打开phpcms\modules\member\index.php 在第30行找到 include template('member', 'index'); 修改为
if($memberinfo[modelid]==10){
include template('member', 'index(此处为原会员模型模板)');
}
else{
include template('member', 'indexXXX(此处为另一种会员模型的模板)');
}
复制代码
11、时间格式化
格式化时间 2011-05-06 11:22:33
{date('Y-m-d H:i:s',$r[inputtime])}
格式化时间 2011年05月06日
{date('Y年m月d日',$r[inputtime])}
12、论坛数据调用
13、类别调用方法
{pc:content action="lists" catid="79" order="listorder DESC" num="14" }
43c4dbc7a114cdb80e7fdafaa4c675f3
{loop $data $n $r}
25edfb22a4f469ecb59f1190150159c6{if $TYPE[$r[typeid]][name]}b4ce64a29f5f7a8b2b194873849116cf[ {$TYPE[$r[typeid]][name]}] 54bdf357c58b8a65c66d7c19c8e4d114{/if}07149bbe91d212c73cabdb6b8cf1c994{str_cut($r[title],33,'')}5db79b134e9f6b82c0b36e0489ee08edbed06894275b65c1ab86501b08a632eb
{/loop}
{/pc}
复制代码
14、碎片
15、组图的调用
16、会员信息调用
17、只调用推荐的友情链接
调用所有的,在loop循环中判断elite的值,或者用get标签调用
18、调用一级栏目
指定catid="0"
19、首页调用多栏目的推荐内容
{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}
25edfb22a4f469ecb59f1190150159c612d7c3157eda88496377277fe90d5b5e{$CATEGORYS[$r[catid]][catname]}5db79b134e9f6b82c0b36e0489ee08edacb613a459857e996e777371e637baa4 {date('d', $r[inputtime])}日e6e38b3c62e8df885fe2e3986461aa6354bdf357c58b8a65c66d7c19c8e4d114f12ea53969a6519b443f997ddf87cccd{$r[title]}5db79b134e9f6b82c0b36e0489ee08edbed06894275b65c1ab86501b08a632eb
{/loop}
{/pc}
复制代码
20、subcat函数的用法
21、按时间归类的list页面
22、调取会员排行榜
{get sql="SELECT `userid`,`username`,`areaid`,`amount`,`point`,`modelid` FROM `phpcms_member_cache` ORDER BY `point` DESC" rows="10" }
复制代码
23、if的一些用法
{if $n ==2 || $n==3 }{/if}
这是以点数来排的……,试下能不能用哈!{$r[username]}
24、当前栏目调用父级及以下栏目信息
{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"}
复制代码
25、内容页调用【内容分页】的当前页如[2/20]的方法
想单独调用内容分页的{当前页}{总分页数}
例如文章标题“国内经济再次腾飞[1/5]”,国内经济再次腾飞[{$page}/{$pagenumber}]
26、调用全站最新内容
把多张表相同的字段读取最新的N条出来,按照inputtime排序,点击查看" target=_blank>}">{str_cut($v['title'],44,'')}5db79b134e9f6b82c0b36e0489ee08edbed06894275b65c1ab86501b08a632eb
{/loop}
复制代码
或者
{php $j=1;}
{pc:content action="lists" catid="$catid" order="id DESC" num="10"}
{loop $data $v}
25edfb22a4f469ecb59f1190150159c6{$j}b15d0fec9e9d9097ca253dfdb0e92b1e{str_cut($v['title'],44,'')}5db79b134e9f6b82c0b36e0489ee08edbed06894275b65c1ab86501b08a632eb
{$j++}
{/loop}
复制代码
2、文章列表标题显示长度(或者叫字数)的控制
不管是标题还是其它,都可以利用strcut函数进行截取,用法如下:
{strcut($v['title'],40,'')} 向后截取,{str_cut($v['title'],40,'')} 向前截取。这 个就是剪切文字长度的,如果你不想显示三个点,就是在40(剪切的字符数)后面加上逗号(,),再加上引号内容为空,如果想变成别的,比如来个❤型之类, 那就在引号内加上❤型。gbk一个汉字为2字符,utf版本一个汉字占用3个字符,注意一下编码再定剪切的字符数。
3、循环调用栏目二级和三级栏目名称
4、在首页或列表页显示文章详细内容
moreinfo=1
5、显示某些指定栏目内的最新文章
{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}
25edfb22a4f469ecb59f1190150159c6ee06f932dea6762e80ef86a76bcf640f[{$CATEGORYS[$r[catid]][catname]}]5db79b134e9f6b82c0b36e0489ee08ed3ef92ae5b30807b7e8620bc848a447b4{$r[title]}5db79b134e9f6b82c0b36e0489ee08edbed06894275b65c1ab86501b08a632eb
{/loop}
{/pc}
复制代码
6、点击排行榜指定频道ID
7、单独调用栏目链接
8、判所在栏目是否为顶级栏目(有子栏目)
{if $top_parentid}{/if}
复制代码
9、点击量调用10、花括号的注意
为了不与模板解析冲突,花括号应该分成2行写,例如:
{} //错误
{ 正确
}
10、首页默认幻灯焦点不显示
文件名大小写原因造成的,解决方法:
文件\statics\js\jquery.sGallery.js 修改jquery.sgallery.js
11、不同的会员模型调用不同模板
打开phpcms\modules\member\index.php 在第30行找到 include template('member', 'index'); 修改为
if($memberinfo[modelid]==10){ include template('member', 'index(此处为原会员模型模板)'); } else{ include template('member', 'indexXXX(此处为另一种会员模型的模板)'); }
11、时间格式化
格式化时间 2011-05-06 11:22:33
{date('Y-m-d H:i:s',$r[inputtime])}
格式化时间 2011年05月06日
{date('Y年m月d日',$r[inputtime])}
12、论坛数据调用
13、类别调用方法
{pc:content action="lists" catid="79" order="listorder DESC" num="14" } <?php $TYPE = getcache('type_content','commons');?> {loop $data $n $r} <li>{if $TYPE[$r[typeid]][name]}<span style="color:#CC6600">[ {$TYPE[$r[typeid]][name]}] </span>{/if}<a href="{$r['url']}"{title_style($r[style])}title="{$r['title']}" target="_blank">{str_cut($r[title],33,'')}</a></li> {/loop} {/pc}
14、碎片
15、组图的调用
16、会员信息调用
17、只调用推荐的友情链接
调用所有的,在loop循环中判断elite的值,或者用get标签调用
18、调用一级栏目
指定catid="0"
19、首页调用多栏目的推荐内容
{
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} <li><a href="{$CATEGORYS[$r[catid]][url]}" target="_blank">{$CATEGORYS[$r[catid]][catname]}</a><font title= "{date('Y-m-d', $r[inputtime])}"> {date('d', $r[inputtime])}日</font></span><a href="{$r[url]}">{$r[title]}</a></li> {/loop} {/pc}
20、subcat函数的用法
21、按时间归类的list页面
22、调取会员排行榜
{get sql="SELECT `userid`,`username`,`areaid`,`amount`,`point`,`modelid` FROM `phpcms_member_cache` ORDER BY `point` DESC" rows="10" }
23、if的一些用法
{if $n ==2 || $n==3 }{/if}
这是以点数来排的……,试下能不能用哈!{$r[username]}
24、当前栏目调用父级及以下栏目信息
{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"}
25、内容页调用【内容分页】的当前页如[2/20]的方法
想单独调用内容分页的{当前页}{总分页数}
例如文章标题“国内经济再次腾飞[1/5]”,国内经济再次腾飞[{$page}/{$pagenumber}]
26、调用全站最新内容
把多张表相同的字段读取最新的N条出来,按照inputtime排序,[url=http://bbs.phpcms.cn/viewthread.php?tid=296531]点击查看
27、一次搜索全站所有模型内容
28、调用其他网站指定内容
在后台增加数据源 然后用get 调用即可
29、[url=http://bbs.phpcms.cn/viewthread.php?tid=279355]wshxh总结1 wshxh总结1
30、调用所有导航
{pc:content action="category" catid="0" num="25" siteid="$siteid" order="listorder ASC"} <ul class="nav-site"> <li><a href="{siteurl($siteid)}"><span>首页</span></a></li> {loop $data $r} <li class="line">|</li> <li><a href="{$r[url]}"><span>{$r[catname]}</span></a></li> {/loop} </ul> {/pc}
31、全站显示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] 根据实际情况修改。
32、显示全站排行榜,显示收藏统计量
{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"} <ul> {loop $data $key $val} <li><a href="{str_replace('/index.html','',$val[url])}" target="_blank" title="{$val[title]}">{$val[title]}</a> {$val[count]}</li> {/loop} </ul> {/pc}
33、select的分页代码
{pc:content action="lists" catid="$catid" num="12" order="id DESC" return="data1" page="$page"}<select name="select_pages" onchange="location.href=this.options[this.selectedIndex].value;"> {loop $data $r1} {/loop} {str_replace("a href", "option value", str_replace("..", "", str_replace("</a", "</option", str_replace("a class", "option class", str_replace("</span>", "页</option>", str_replace("<span>", "<option selected>//", str_replace("> ", ">", $pages)))))))}</select>{/pc}
以上就是phpcms v9二次开发及使用中各种问题解决方案(二)的内容,更多相关内容请关注PHP中文网(www.php.cn)!