插件信息
插件名称:首页四格(访客信息+论坛档案+最新主题+最新回复)
所属版本:Discuz! 5.0.0 正式版(Discuz! 5.5.0 不适用,需要稍做修改)
插件作者:Laoniu(修改自4.0首页四格+魔焰男孩的显示访客信息)[原插件链接]
插件改进:Clwarm(改善模板,提供用户自行个性化的方案)
插件演示:见图片(『温暖世界』学生论坛是经过简化的)
增加文件:userinfo.inc.php / hot_topics.htm
修改文件:index.php / discuz.htm
数据升级:无
查询增加:2个
最后更新:2007年6月3日
(2007年6月3日前安装的用户请安装该补丁:https://discuz.dismall.com/thread-640662-1-1.html)
(2006年10月19日前安装的用户请安装该补丁:https://discuz.dismall.com/viewthread.php?tid=418450&page=10#pid3411312)
(2006年11月4日前安装的用户请安装该补丁:https://discuz.dismall.com/viewthread.php?tid=418450&page=14#pid3604605)
技术支持:『温暖世界』网站:http://warm.meyu.net
『温暖世界』学生论坛:http://17.vi1.cn
Clwarm's Blog:http://clwarm.blog.sohu.com
FreeDiscuz!:www.freediscuz.net
Discuz!:discuz.dismall.com
演示图片:
功能介绍
首页四格,顾名思义,就是放在首页上方的四个格子。格子里放的是什么糖,就要看大家的创意了。本插件最基本的就是四项基本内容,即:访客信息、论坛档案、最新主题、最新回复。其他版本的首页四格同样可以作为您DIY的参考哦~
改进说明
原插件的使用平台为 Discuz! 4.1.0 版本,自从 Discuz! 5.0.0 正式版发布以来,由于时间关系我也很少关注 Discuz! 和 Discuz! 插件区了。十一长假应该说是一个放松的时间,我利用了少许的课余时间研究了一些东西,其中改进了这样一个插件。
我主要做的改进工作是将模板重新编写,因为原插件的模板代码不是很规范,虽然不影响使用,但从代码上来讲不是太好。我不敢说我重新编写了就都符合规范了,总之有一定的改进吧。原插件有一些重复的代码,也可能是出于某种考虑这样写,在我的改进中还是将其进行了一下简化。
除此之外呢,我个人感觉这样一个插件比较臃肿。所以给大家提供一些在此基础上DIY,添加删除内容的方法,主要给新手朋友一个体验自己动手实践的机会,相信高手们完全可以根据自己的需求和意愿轻松DIY了。
顺便祝愿大家国庆节快乐,中秋节团圆!
更新说明
2007年6月3日修正:“隐藏未经审核帖和回收站帖子”部分的代码规范问题(https://discuz.dismall.com/thread-640662-1-1.html)
2006年11月05日增加:功能不变但适合窄页面风格的四格(https://discuz.dismall.com/viewthread.php?tid=418450&page=16#pid3613336)
2006年11月05日尝试:部分积分错位用户可以尝试使用该模版(https://discuz.dismall.com/viewthread.php?tid=418450&page=16#pid3613257)
2006年11月04日修正:等待审核或已经删出到回收站的帖子不显示(https://discuz.dismall.com/viewthread.php?tid=418450&page=14#pid3604605)
2006年10月19日修正:首页四格的验证码问题(https://discuz.dismall.com/viewthread.php?tid=418450&page=10#pid3411312)
版权说明
原来的源代码归原作者本人所有,我改进的部分归我所有。是谁改或写的,那么版权就归谁。大家愿意随心所欲地DIY,只要尊重作者和修改者就可以了,我没什么其他的要求或限制。至于原作者,相信他们同样希望为大家提供一个自主个性化的空间吧。
附件说明
本帖的附件中,我只提供完整版本的下载。如果你要简化其中的内容,萝卜白菜各有所爱,那么请自己行动吧!
附件中文件详细说明:
根目录
readme.txt ---- 插件信息及安装说明
diy_readme.txt ---- 新手 DIY 方案
upload 目录 ---- 您需要该目录下所有文件上传至论坛根目录下
- include
- userinfo.inc.php ---- 访客信息部分所需要的文件(新增)
- templates
- default
- hot_topics.htm ---- 首页四格模板文件(新增)
edit 目录 ---- 手工修改部分已经修改好的文件,如果您未曾对这部分文件进行过修改,则可以直接替换到相应目录下的文件
- discuz.htm ---- 如果直接替换的话,请替换到模板目录下
- index.php ---- 如果直接替换的话,青替换到论坛根目录下
preview 目录 ---- 插件完整版的预览
附件下载见本帖最后。
手工修改
这里提供的是完整版中,所需要对文件做的修改。有关DIY中所要增删的内容,将在后面的DIY方案中详细说明。
一、上传附件中的所有文件。
二、修改根目录下的 index.php 文件。
================================- require_once './include/common.inc.php';
复制代码 替换为- require_once './include/common.inc.php';
- //--首页四个之访客信息部分 Start--
- require_once './include/userinfo.inc.php';
- //--首页四个之访客信息部分 End--
复制代码 ================================- } else {
- $showoldetails = false;
- }
复制代码 替换为- } else {
- $showoldetails = false;
- }
- //--首页四格增加 Start--
- $hack_subject_len=34; //标题最多显示的字数
- $hack_subject_num=12; //最新主题与回复显示的数量
- //最新主题
- $query = $db->query("SELECT dateline,tid,subject,author,views,replies FROM {$tablepre}threads where displayorder>=0 ORDER BY dateline DESC LIMIT 0, $hack_subject_num");
- while($thread = $db->fetch_array($query)) {
- $thread[subject0]=$thread[subject];
- $thread['subject'] = cutstr($thread['subject'], $hack_subject_len);
- $hack_newthreads_threadlist[] = $thread;
- }
- $threadview = $threadreply = array();
- //最新回复
- $query = $db->query("SELECT replies, tid, subject,author,views,lastposter FROM {$tablepre}threads where replies !=0 and displayorder>=0 ORDER BY lastpost DESC LIMIT 0, $hack_subject_num");
- while($thread = $db->fetch_array($query)) {
- $thread[subject0]=$thread[subject];
- $thread[subject] = cutstr($thread[subject], $hack_subject_len);
- $threadreply[] = $thread;
- }
- //--首页四格增加 End--
复制代码 ================================- $newthreads = round(($timestamp - $lastvisit + 600) / 1000) * 1000;
复制代码 替换为- $newthreads = round(($timestamp - $lastvisit + 600) / 1000) * 1000;
- //--首页四格之建站时间增加 Start--
- $today = mktime (0,0,0,date("m") ,date("d"),date("Y"));
- $build_date = mktime (0,0,0,03,31,2006); //请修改最后的三个数字,分别代表论坛建站时间的月、日、年。
- $build_days = (int)(($today-$build_date)/(24*3600));
- //--首页四格之建站时间增加 End--
复制代码 ================================
(2006年10月19日新增)- $currenttime = gmdate($timeformat, $timestamp + $timeoffset * 3600);
复制代码 替换为- //--首页四格验证码 Star--
- $seccodecheck = substr(sprintf('%05b', $seccodestatus), -2, 1);
- if(!submitcheck('loginsubmit', 1, $seccodecheck)) {
- $discuz_action = 6;
- $referer = dreferer();
- $thetimenow = '(GMT '.($timeoffset > 0 ? '+' : '').$timeoffset.') '.
- gmdate("$dateformat $timeformat", $timestamp + $timeoffset *
- 3600).
- $styleselect = '';
- $query = $db->query("SELECT styleid, name FROM {$tablepre}styles WHERE
- available='1'");
- while($styleinfo = $db->fetch_array($query)) {
- $styleselect .= "<option value="$styleinfo[styleid]">$styleinfo
- [name]</option>\n";
- }
- $_DCOOKIE['cookietime'] = isset($_DCOOKIE['cookietime']) ? $_DCOOKIE
- ['cookietime'] : 2592000;
- $cookietimecheck = array((isset($_DCOOKIE['cookietime']) ? intval
- ($_DCOOKIE['cookietime']) : 2592000) => 'checked');
- if($seccodecheck) {
- $seccode = random(4, 1);
- }
- }
- //--首页四格验证码 End--
- $currenttime = gmdate($timeformat, $timestamp + $timeoffset * 3600);
复制代码 ================================
三、修改模板目录下的 discuz.htm 文件。
================================- <div class="left" style="line-height: 18px;">
- <span class="bold"><!--{if $gid || !$discuz_uid}--><a href="$indexname">$bbname</a><!--{else}-->$discuz_user<!--{/if}-->
- <!--{if $supe_status && $discuz_uid}-->
- -
- <!--{if !$xspacestatus}-->
- <a href="$supe_siteurl/index.php?action/register" target="_blank">{lang supe_signin_xspace}</a>
- <!--{else}-->
- <a href="$supe_siteurl/index.php?action/space/uid/$discuz_uid" target="_blank">{lang supe_myxspace}</a>
- <!--{/if}-->
- <!--{/if}-->
- </span>
- <br>
- {lang credits}: <span class="bold smalltxt">$credits</span> <!--<span id="creditlist">{lang credits_detail}<script type="text/javascript">menuregister(false, "creditlist", true)</script></span>--> / {lang index_status}:
- <!--{if $validdays}-->
- <a href="member.php?action=groupexpiry"><span class="bold">$grouptitle</span>($validdays)</a>
- <!--{else}-->
- <span class="bold">$grouptitle</span><!--{/if}-->
- <!--{if $allowinvisible && $discuz_uid}-->{lang online_status}:
- <!--{if !empty($invisible)}-->
- <a href="member.php?action=switchstatus" title="{lang login_switch_normal_mode}">{lang login_invisible_mode}</a>
- <!--{else}-->
- <a href="member.php?action=switchstatus" title="{lang login_switch_invisible_mode}">{lang login_normal_mode}</a>
- <!--{/if}-->
- <!--{/if}--><br>
- {lang your_lastvisit} <span class="smalltxt">$lastvisittime</span><br>
- </div>
- <div class="right" style="line-height: 18px;">
- <a href="search.php?srchfrom=$newthreads&searchsubmit=yes">{lang show_newthreads}</a> |
- <!--{if $discuz_uid}-->
- <!--{if $allowuseblog}-->
- <a href="blog.php?uid=$discuz_uid" target="_blank">{lang blog}</a> |
- <!--{/if}-->
- <!--{/if}-->
- <a href="digest.php">{lang digest}</a> |
- <a href="member.php?action=markread">{lang mark_read}</a>
- <!--{if $rssstatus}--><a href="rss.php?auth=$rssauth" target="_blank"><img src="images/common/xml.gif" border="0" class="absmiddle" alt="{lang rss_subscribe_all}" /></a><!--{/if}-->
- <br>
- {lang total} <span class="smalltxt">$threads</span> {lang index_threads} / <span class="smalltxt">$posts</span> {lang index_posts} / {lang index_today} <span class="smalltxt">$todayposts</span> {lang index_posts}<br>
- {lang total} <span class="smalltxt">$totalmembers</span> {lang index_members} / {lang welcome_newmember} <a href="viewpro.php?username=$memberenc"><span class="bold">$lastmember</span></a>
- </div>
- </div><br>
复制代码 替换为- <!--首页四格修改 Star-->
- <div class="left" style="line-height: 18px;">
- <span class="bold"><a href="$indexname">$bbname</a></span>
- </div></div><br />
- {template hot_topics}
- <!--首页四格修改 End-->
复制代码 ================================
到此为止,完整版的首页四格安装完毕!
新手 DIY 方案请见2楼。
[ 本帖最后由 Clwarm 于 2007-6-3 19:02 编辑 ] |