下载地址:
!qinai!游客!yincang_youke!
演示图:
因为是自用的,所以插件和广告嵌入点不全(制作之初看着碍事儿的就删了)。
——
总的来说样子算是比较整洁,但实际代码不怎么规范。
不适合新手正式使用,可能你会遇到一些我懒得解决的麻烦。
只有utf-8编码,文件较多,转码费事儿,会的自己转下。
1.整体宽度1080px。
2.CSS代码比较全,很多代码可以重复利用。
3.会员空间的背景图更换,flash比较蛋疼,偶尔不灵,不是我的原因,是浏览器的问题。
4.全部页面无diy。
5.部分页面数据涉及自定义的查询调用,查询都在extend_data.php文件里,每个查询是做什么的都有注释。
6.其他,想不起来什么了。
修改文件前做好备份。
模板基于当时数据及设置所制作,难免有部分页面出现错位或内容缺失。
20180823
1.通过为liu1989查看,找到个导致页面空白的问题。
在extend_data.php文件中第254行左右的
两处查询未作判断会导致页面空白,需要加上tid、uid、fid判断。
即为:
- // 帖子是否收藏
- if($_G['tid'] && $_G[uid]){
- $favorites = DB::fetch_all("select id from ".DB::table("home_favorite")." WHERE `uid`='$_G[uid]' AND `idtype`='tid'");
- $favids = array_column($favorites, 'id');
- $isfav = in_array('', $favids) ? TRUE : (in_array($_G['tid'], $favids) ? TRUE : FALSE);
- $favid = DB::result_first("select favid from ".DB::table("home_favorite")." WHERE `id`='$_G[tid]' AND `uid`='$_G[uid]'");
- }
- // 版块是否收藏
- if($_G['fid'] && $_G['uid']){
- $favorites_forum = DB::fetch_all("select id from ".DB::table("home_favorite")." WHERE `uid`='$_G[uid]' AND `idtype`='fid'");
- $favids_forum = array_column($favorites_forum, 'id');
- $isfav_forum = in_array('', $favids_forum) ? TRUE : (in_array($_G['fid'], $favids_forum) ? TRUE : FALSE);
- $favid_forum = DB::result_first("select favid from ".DB::table("home_favorite")." WHERE `id`='$_G[fid]' AND `uid`='$_G[uid]'");
- }
复制代码 理论上这样才严谨不会因页面无相应参数导致查询条件不足而出错。
但我的不做判断也没问题,有些奇怪。
2.帖子列表页面缩略图地址错误的问题。
以上问题已在附件中更新。
**关于.php后缀,它不是错误。
.htm文件可以顺着模板路径看到模板文件源代码,.php文件只能看到<?php echo '这里的内容';exit;?>,防止盗版。
若.php的模板文件改为.htm后缀,则需要将文件内首行<?php echo 'cmsbj.cn';exit;?>删除。
导致空白通常是数据查询和if判断的问题,和后缀没什么关系。
——————————————————
20180829
测试php5.6可用,但如出现空白请升级到php7.0
修复了日志发布页面乱码问题。
修复了日志发布页面超宽错位问题。
修复了高级模式回帖跳转楼层消失的问题。
修复了复制后追加的版权信息乱码的问题。
修复了论坛首页右侧统计信息不显示的问题。
重新将home目录所有文件重新转码(utf-8)。
——————————————————
20180830
修复了会员空间diy乱码的问题。
修复了发表日志和文章时验证码显示位置错误的问题。
——————————————————
20180906
上传了日志单独页模板
blog.php放根目录,blog文件夹放模板风格目录。
——————————————————
20181015
删除选中收藏后跳转报错问题,替换home目录同名文件
——————————————————
20181214
修复了会员空间报错Call to undefined function get_member_count()的问题。
修复了没有关注列表模板的问题。
——————————————————
修正simple_white\forum\forumdisplay_list.php 第 21 行,“新人贴、精华帖”图章图片问题。
原代码
{STATICURL}image/stamp/{$_G[cache][stamps]}{$thread['iconurl']}
修正代码
{STATICURL}image/stamp/{$_G[cache][stamps][$thread[icon]][url]}
SQL慢查询,2核4G服务器,SQL执行平均花费时间:1.2-1.5s,自己电脑本地同样数据库测试约0.3-0.5s。
- SELECT t.*,p.message,p.author as postname,p.dateline as postdate,p.authorid as postuid,p.pid,f.name FROM pre_forum_thread t LEFT JOIN pre_forum_post p on p.tid=t.tid LEFT JOIN pre_forum_forum f on f.fid=t.fid WHERE t.`fid` NOT in (56,63,68,72,82,84,89) and p.first=0 and p.`invisible`=0 and p.`authorid` <> 1 group by p.pid ORDER BY p.`pid` DESC LIMIT 0,20;
复制代码
修改SQL语句,让MySQL先排序取前20条再连接查询---------------------
- SELECT t.*,p.message,p.author as postname,p.dateline as postdate,p.authorid as postuid,p.pid,f.name FROM (SELECT * FROM pre_forum_thread t where t.`fid` NOT in (56,63,68,72,82,84,89) and t.`digest`>0'ORDER BY tid DESC LIMIT 0,20 ) t LEFT JOIN pre_forum_post p on p.tid=t.tid LEFT JOIN pre_forum_forum f on f.fid=t.fid WHERE p.first=0 and p.`invisible`=0 and p.`authorid` <> 1 group by p.pid ORDER BY p.`pid` DESC LIMIT 0,20;
复制代码
执行时间大约0.12-0.15s,效率大大提高。
NOT in这个条件也根据自己论坛的情况做修改。
不过,这样改了过后,会出现(0) It is not safe to do this query的提示,好像是sql里面包含有子查询?网上说$_config['security']['querysafe']['status']的值从1改为0. 可以避免这个提示,不过要是有其他更好的解决方案就更好了。 |