找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2298|回复: 0

[分享] dedecms使用技巧

  [复制链接]
发表于 2012-10-12 16:31:42 | 显示全部楼层 |阅读模式 来自 中国–山东–潍坊
       我在网络上看到的,不知本站有没有发布过。
       dedecms用的人很多,都是因为它的开放性、可定制强,当然这要感谢blt,能写出这样好的程序,并且开源给大家用,很不容易。但是最近大家在dedecms应用上经常会出现一些难题,在官网反应也没有什么效果。
  这个时候最重要的就是大家把自己使用dede的心得奉献出来,大家一起分享,才能少走弯路。在这里我先把自己几年来用dede的一些小技巧贡献给大家。也希望有dede小技巧的坛友能在后面回帖,大家集锦到一起为更好的应用dede提供好的氛围。先请大家看看我用dedecms5.6建的网站极品淘吧 一个设计资源 网站。
  我先来了。

一、文章页调用“责任编辑”
  1、打开dedecms安装根目录的include文件夹中的inc_archives_view.php文件,找到如下代码:

        $query = "Select arc.*,tp.reID,tp.typedir from {$this->maintable} arc
        left join #@__arctype tp on tp.ID=arc.typeid where arc.ID='$aid'";

替换成如下内容:      

        $query = "Select arc.*,tp.reID,tp.typedir,am.uname from {$this->maintable} arc
        left join #@__arctype tp on tp.ID=arc.typeid left join #@__admin am on arc.adminID = am.ID where arc.ID='$aid'";

  2、然后修改文章页模板,增加调用责任编辑的代码为{dede:field name='uname'/}。再生成文章就ok了。

  注意
  A、上面的修改是基于dedecms2007(5.0rc1)的;而dedecms4.0rc1的修改不是这样,4.0的修改是将dedecms安装根目录的include文件夹中的inc_archives_view.php文件中的代码:

        $query = "Select arc.*,tp.reID,tp.typedir from #@__archives arc
        left join #@__arctype tp on tp.ID=arc.typeid where arc.ID='$aid'";

替换为:

        $query = "Select arc.*,tp.reID,tp.typedir,am.uname from #@__archives arc
        left join #@__arctype tp on tp.ID=arc.typeid left join #@__admin am on arc.adminID = am.ID where arc.ID='$aid'";   

  B、这样算搞定了。注意不要搞错了版本修改,否则在dedecms5下,如果启用了分类信息模块,在前后台浏览、编辑分类信息标题时就出现bug,进入页面显示的是内容不相关的其他文章内文。


二、文章页作者、来源优化 (由极品淘吧提供)
  即在添加文章的作者、来源为空时,在文章页分别显示佚名和网络,代码如下:
  作者:{dede:field name='writer' runphp='yes'}if(@me == "") @me = "佚名";{/dede:field} 
  来源:{dede:field name='source' runphp='yes'}if(@me == "") @me = "网络";{/dede:field}

  当文章的作者、来源为空,文章页也不显示的代码如下,这个据说是blt写的:
    {dede:field name='source' runphp='yes'}
    if(@me == "") @me = "";else @me = "来 源:".@me;
    {/dede:field}

    {dede:field name='writer' runphp='yes'}
    if(@me == "") @me = "";else @me = "作 者:".@me;
    {/dede:field}

三、推荐头图
  1、说明:所以我要公布这个,是因为官网dedecms首页的那个头图代码有bug,就是在firefox下面头图尺寸变形;我这个代码同时兼容ie和firefox;代码如下:

  • <script type="text/javascript">
  • linkarr = new Array();
  • picarr = new Array();
  • textarr = new Array();
  • var focus_width=305;
  • var focus_height=180;
  • var text_height=19;
  • var pics = "";
  • var links = "";
  • var texts = "";
  • var swf_height = focus_height+text_height;
  • var defJpeg = "{dede:global name='cfg_phpurl'/}/img/jpeg.jpg";
  • {dede:arclist type='commend' row='5' function='FormatScript(@me)'}
  • linkarr[[field:global name=autoindex/]] = "[field:arcurl/]";
  • picarr[[field:global name=autoindex/]] = "[field:picname/]";
  • textarr[[field:global name=autoindex/]] = "[field:title/]";
  • {/dede:arclist}
  • for(i=1;i<picarr.length;i++){
  •   //if(picarr.indexOf("jpg")==-1 && picarr.indexOf("JPG")==-1) picarr = defJpeg;
  •   if(pics=="") pics = picarr;
  •   else pics += "|"+picarr;
  • }
  • for(i=1;i<linkarr.length;i++){
  •   if(links=="") links = linkarr;
  •   else links += "|"+linkarr;
  • }
  • for(i=1;i<textarr.length;i++){
  •   if(texts=="") texts = textarr;
  •   else texts += "|"+textarr;
  • }
  • document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ focus_width +'" height="'+ swf_height +'">');
  • document.write('<param name="allowScriptAccess" value="sameDomain"><param name="movie" value="/img/pic.swf">');
  • document.write('<param name="quality" value="high"><param name="bgcolor" value="#f1f1f1">');
  • document.write('<param name="menu" value="false"><param name=wmode value="opaque">');
  • document.write('<param name="FlashVars" value="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'">');
  • document.write('<embed src="/img/pic.swf" wmode="opaque" FlashVars="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'" menu="false" bgcolor="#f1f1f1" quality="high" width="'+ focus_width +'" height="'+ swf_height +'" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
  • document.write('</object>');
  • </script>
复制代码
2、如果想让头图显示推荐文章中有配图的文章,这样就可以避免头图推荐的文章和推荐文章完全相同;我们需要修改上面dede调用部分为:

{dede:arclist type='image commend' row='5' function='FormatScript(@me)'}
linkarr[[field:global name=autoindex/]] = "[field:arcurl/]";
picarr[[field:global name=autoindex/]] = "[field:picname/]";
textarr[[field:global name=autoindex/]] = "[field:title/]";
{/dede:arclist}

四、慢慢补充,我要去接lp下班了。(由极品淘吧提供)

评分

参与人数 1金币 -75 收起 理由
天外飘仙 -75 发帖请选准板块,这不是织梦区

查看全部评分

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-11-27 23:17 , Processed in 0.058182 second(s), 13 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表