您好,UncleToo欢迎您!  为了更好的浏览本站,请使用高版本浏览器
RSS  Tag     设为首页 | 加入收藏
 您所在的位置:首页 > 开源项目

4个DEDE开发中非常有用的功能

作者:UncleToo  来源:原创  日期:2014-08-20 20:51:49
收藏  评论:( 0 )  阅读:307

       DEDE是很多PHP爱好者使用较多的一套开源网站程序,我们只要在其基础上进行简单的二次开发即可变成我们想要的网站程序。在本章PHP教程中,UncleToo给大家推荐4个DEDE开发中经常使用的几个功能。


1、设置文章页上一篇下一篇标题字数

为了避免文章标题字数过多,影响美观,我们可以对其进行控制。  

打开include/arc.archives.class.php文件  

查找:  

$this->PreNext['pre'] = "上一篇:{$preRow['title']} ";  

在这一行上面加上以下代码  

$preRow['title']=cn_substr($preRow['title'],30);//最多显示15个汉字  

查找:  

$this->PreNext['next'] = "下一篇:{$nextRow['title']} ";  

在这一行上面加上以下代码  

$nextRow['title']=cn_substr($nextRow['title'],30);//最多显示15个汉字  

然后再重新生成所有页面即可。


2、首页调用留言板内容

在你想想条用留言板的地方加入如下代码:

{dede:loop table='dede_guestbook' sort='dtime' row='2' titlelen='36' typeid='40' if='ischeck=1'}  

     <li>  

     <h2>[field:title /]</h2>  

     <p class="noname_ask_name">[field:uname /] [field:dtime function="MyDate('Y-m-d',@me)"/]</p>  

     <p class="noname_ask_text">[field:msg function="cn_substr('@me',100)"/] </p>  

     </li>  

 {/dede:loop}

其中:

  • [field:uname /]为调用用户昵称

  • <img src='[field:phpurl/]/plus/guestbook/images/[field:face /].gif'>为调用用户头像

  • [field:msg function="cn_substr('@me',30)"/]为调用评论内容

  • [field:ip /]为调用发帖者IP地址


3、在首页列表页调用文章内容

某些情况下,应客户要求需要在首页或者列表页调用文章的全文,就必须应用到如下的标签,本文整理3个示例代码,可根据自己的需要修改使用。  

[field:id runphp='yes'] $aid = @me; $row = $GLOBALS['dsql']->GetOne("Select body From `dede_addonarticle` where aid='$aid' "); @me = "{$row['body']}";[/field:id]  

调用全文,不去除html  


[field:id function='html2text(@me)' runphp='yes'] $aid = @me; $row = $GLOBALS['dsql']->GetOne("Select body From `#分隔符@__addonarticle` where aid='$aid' "); @me = cn_substr(strip_tags("{$row['body']}"),2000);[/field:id]  

调用全文,截取2000字符,去除html  


[field:id function='html2text(@me)' runphp='yes'] $aid = @me; $row = $GLOBALS['dsql']->GetOne("Select body From `#分隔符@__addonarticle` where aid='$aid' "); @me = $row['body'];[/field:id]  

调用全文,不去除html  

只调用内容  不去除html标签,不截取。也可在列表页调用  

我来补充一下:随便调用多少字段都可以。  

[field:id runphp='yes'] $aid = @me; $row = $GLOBALS['dsql']->GetOne("Select body From `dede_addonarticle` where aid='$aid' "); @me = cn_substr(("{$row['body']}"),300);[/field:id]  

“分隔符”这三个字,这是为了#@不解析而添加的,请自行去除!  


4、调用文章内第一张图

打开文件include\helpers\extend.helper.php,在最后添加如下代码:

/**
* 多缩略图插件
*
* @return string
*/ 
if( ! function_exists('simgs')) 
{ 
function simgs($aid){ 
global $dsql; 
$arcRow = GetOneArchive($aid); 
$docdir =$arcRow[typedir]; 
$senddate =$arcRow[senddate]; 
//$senddated=MyDate('Y/md',$senddate); 
//$docurl = str_replace("{cmspath}","$docdir","$senddated"); 
$sql = "SELECT url FROM #分隔符@__uploads WHERE arcid='$aid' ORDER BY aid DESC LIMIT 1"; 
$dsql->SetQuery($sql); 
$dsql->Execute(); 
while ($row = $dsql->GetArray()) { 
$spics .= "$row[url]"; 
} 
return $spics; 
} 
}

前台标签[field:id function="simgs(@me)"/] 调用的是图片路径




除非特别声明,本站所有PHP教程及其他教程/文章均为原创、翻译或网友投稿,版权均归UncleToo中文网所有, 转载请注明作者及出处。
原文网址:http://www.uncletoo.com/html/openobj/1019.html
读完这篇文章后,你是否有所收获? 分享是一种生活的信念!
  • 0
  • 0
我来说两句
更多>>网友评论