A-A+

phpCMS 二次开发

2015年08月18日 phpcms 暂无评论 阅读 102 次

1.去掉标题限制后出现的省略号
{str_cut($r[title],36,'')}

2.格式化时间 2011-05-06 11:22:33
{date('Y-m-d H:i:s',$r[inputtime])}

3.格式化时间 2011年05月06日
{date('Y年m月d日',$r[inputtime])}

4.显示栏目名称(只是名称,不带链接)
{$catname}

5.显示栏目名称和链接(可以点击)
<a href="{$CATEGORYS[$r[catid]][url]}">{$CATEGORYS[$r['catid']]['catname']}</A>

6.外部数据源调用
{pc:get sql="SELECT * FROM pre_forum_thread" cache="3600" dbsource="discuz" return="data" num="10"}

7.调用子栏目(在栏目首页模板需要用到)
{pc:content action="category" catid="$catid" num="25" siteid="$siteid" order="listorder ASC"}{loop $data $r}
<a href="{$r[url]}">{$r[catname]}</a> | {/loop}{/pc}

8.显示指定id的栏目名称 (例子这里catid=22)
{$CATEGORYS[22]['catname']}

9.在文章面前显示文章类别
{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}

10.指定变量循环增长(幻灯片经常用到)
{pc:content action="lists" catid="66" order="listorder DESC" thumb="1" num="5" }
{php $num = 0}
{loop $data $r}
linkarr[{$num}] = "{$r[url]}";
picarr[{$num}] = "{$r[thumb]}";
textarr[{$num}] = "{str_cut($r[title],36,'')}";
{php $num++}
{/loop}
{/pc}

11.文章调用使用limit
{pc:content action="position" posid="36" num="1" order="listorder DESC limit 1,1--" }
其他都是跟以前一样使用
{pc:content action="position" posid="31" order="listorder DESC" limit='1,8--'}
{loop $data $r}
<li><a href="{$r[url]}" title="{$r[title]}" target=_blank>{str_cut($r[title],36,'')}</a></li>
{/loop}

{/pc}

12.phpCMS链接查询
{pc:get sql="SELECT * FROM v9_news a join v9_news_data b on a.id=b.id where catid=27" cache="3600" page="$page" return="data"}
<UL>
{loop $data $key $val}
<LI><A href="{$r[url]}" target=_blank>{$val[title]}</A> </LI>
{/loop}
</UL>
{if $pages}<DIV class=page>{$pages}</DIV>{/if}
{/pc}
{$val[content]}

13.phpCMS上一篇、下一篇
<strong>上一篇:</strong><a href="{$previous_page[url]}">{$previous_page[title]}</a><br />
<strong>下一篇:</strong><a href="{$next_page[url]}">{$next_page[title]}</a>

注意:a标签里面不能有target=“_blank”会发生错误。

 

14.自己修改phpcms后台点击修改/添加内容,在浏览器的新窗口中打开。

一、打开phpcmsmodulescontenttemplates  下的content_list.tpl.php文件
二、找到<?php echo L('add_content');?>添加内容      <?php echo L('edit');?>修改内容
三、
添加:<a class="add fb" href="?m=content&c=content&a=add&menuid=&catid=<?php%20echo%20$catid;?>&pc_hash=<?php%20echo%20$_SESSION['pc_hash'];?>"

target="_blank"><em><?php echo L('add_content');?></em></a>

修改:<td align='center'><a href="?m=content&c=content&a=edit&catid=<?php echo $catid;?>&id=<?php echo $r['id']?>&pc_hash=<?php echo $_SESSION

['pc_hash'];?>" target="_blank"><?php echo L('edit');?></a>

15.修改网站后台登陆页面,和后台首页信息!

第一是标题:一个是admin_site_title、website_manage,这是后台管理标题参数,还有一个后台登录的标题参数,phpcms_logon。
分别在/phpcms/languages/zh-cn/admin.lang.php的第9行、第668行,/phpcms/languages/zh-cn/system.lang.php的第9行。
其他的参数也都可以看着修改,还有个copyright参数,可以改下,后台登录的的底部信息。
第二是登录成功后首页:首页的展示信息,模板在/phpcms/modules/admin/templates/main.tpl.php,后台首页自定义添加修改。
第三是后台的logo图片,样式文件在/statics/css/zh-cn-system.css,第37行.header .logo。
基本上后台就这些需要改的,后台需要改的页面模板基本都在/phpcms/modules的几个文件夹。

16..除某一两个栏目外循环出所有的栏目。
例:
{loop subcat(9,0,0,$siteid) $r}
{if $r['catid']==10 }<?php continue; ?>{/if}
{if $r['catid']==11 }<?php continue; ?>{/if}
<li class="news_nav_li">{$r[catname]}</li>
<li>
<ul class="news_nav">
{loop subcat($r[catid],0,0,$siteid) $w}
<li><a href="{$w[url]}">{$w[catname]}</a></li>
{/loop}
</ul>
</li>
{/loop}

17.phpCMS格式化时间的多种方式。
a标准型:{date('Y-m-d H:i:s', $rs['inputtime'])}  输出为:2010-12-31 13:15:10
b拆分型:{date('Y',$rs[inputtime])}年{date('m',$rs[inputtime])}月{date('d',$rs[inputtime])}日  输出为:2010年12月31日
c扩展型:
{date('Y',$inputtime);} 4位年份  输出为:2010 或 2011
{date('y',$inputtime);} 2位年份  输出为:10 或 11
{date('F',$inputtime);} 英文月份全称  输出为:January 到 December
{date('M',$inputtime); } 英文月份缩写  输出为:Jan 到 Dec
{date('m',$inputtime);} 前导零数字月份  输出为:01 到 12
{date('n',$inputtime); } 数字月份  输出为:1 到 12
{date('d',$inputtime);} 前导零日期  输出为:01 到 31
{date('j',$inputtime);} 日期  输出为:1 到 31
{date('l',$inputtime);} 英文星期全称  输出为:Sunday 到 Saturday
{date('D',$inputtime);} 英文星期缩写  输出为:Mon 到 Sun
{date('N',$inputtime);} 格式数字星期  输出为:1 到 7

18..phpcms V9编辑器的批量去除超链接功能
1、批量去除超链接:
打开 statics/js/ckeditor/ckeditor.js
找到
$.execCommand('unlink',false,null);
修改为:
$.execCommand('unlink',false,true);
2、上传图片自动添加ALT参数
修改 statics/js/ckeditor/plugins/image/dialogs/image.js
找到
accessKey:'T','default':''
替换成
accessKey:'T','default':$('#title').val()
3、修改编辑器回车换行<p>or <br />
打开文件 staticsjsckeditorconfig.js 把里面的
config.enterMode = CKEDITOR.ENTER_BR;
config.shiftEnterMode = CKEDITOR.ENTER_P;
修改为
config.enterMode = CKEDITOR.ENTER_P;
config.shiftEnterMode = CKEDITOR.ENTER_BR;
4、给编辑器添加一键排版功能
修改
phpcmslibsclasses栏目下的
form.class.php找到['Maximize'], 在它下面添加['autoformat'],保存即可。
找到staticsjsckeditor文件夹下的config.js 文件
找到
config.extraPlugins = 'capture';
修改为:
config.extraPlugins = 'capture,autoformat';
保存即可。
修改后记得更新缓存,清除cookies。

19.显示指定id的栏目名称 (例子这里catid=22){$CATEGORYS[22]['catname']}

标签:

给我留言

Copyright © web前端技术开发个人博客 保留所有权利  京ICP备14060653号 Theme  Ality

用户登录