首页 > 实操技巧 > 35dir分类目录bug修改教程打包汇总
2018
12-04

35dir分类目录bug修改教程打包汇总

35dir这个分类目录系统小编使用也快两年了,从最开始的满身bug,到后来的修修补补,一步步完善花费了小编不少的时间,以至于后来小编选择低价把修改完善后的35dir源码出售。虽然是低价出售,但总有些人不愿意出这个钱,所以,也只能打包个35dir教程让那些人自己动手去修改了。

问题一、35dir分类目录文章图片自适应宽度问题

初初下载35dir这个源码时,如果在发表的文章中插入的图片尺寸过大时会撑破整个页面,用户体验瞬间荡然无存。对于这种绝对要第一时间解决,方法如下:

依次找到路径:网站根目录/themes/default/skin,在skin目录下找到style.css文件,打开该文件后搜索“content”,再然后在其下方加入如下代码:

.content img{
max-height:500px;
max-width:670px;
width:expression((this.width > 650 && this.width > this.height) ? '670px': this.width+'px');
height:expression((this.height > 500 && this.height > this.width) ? '500px': this.height+'px');
float:middle;
}

该代码的作用就是限制图片的宽和高的最大值,修改完成后,将该文件重新上传覆盖即可解决35dir分类目录图片撑破页面问题

问题二、35dir分类目录缩略图不显示问题

35dir分类目录缩略图不显示也是比较明显的问题,所以放在第二位解决。要解决缩略图不显示问题,就要解决缩略图调用接口问题,方法如下:

1、打开文件 source\module\prelink.php

搜索get_webthumb,找到以下代码:

/** thumbs */
function get_webthumb($web_pic) {
global $options;
if (!empty($web_pic)) {
$strurl = $options['site_root'].$options['upload_dir'].'/'.$web_pic;
} else {
$strurl = $options['site_root'].'public/images/nopic.gif';
}
return $strurl;
}

将其修改为

/** thumbs */ function get_webthumb($web_pic,$web_url) { 
global $options; 
if (!empty($web_pic)) { 
$strurl = $options['site_root'].$options['upload_dir'].'/'.$web_pic; 
} else { 
//在这里选择不同的缩略图服务网站。 
//$strurl = $options['site_root'].'public/images/nopic.gif'; 
//$strurl = 'http://y.searchpreview.de/preview?s='.$web_url; 
//$strurl = 'http://get.thumbshots.ru/?lang=en&size=s&url='.$web_url; 
//$strurl = 'http://webthumb.jd-app.com/webthumb.php?url='.$web_url; 
$strurl = 'http://api.webthumbnail.org/?width=160&height=100&screen=1024&url='.$web_url; } return $strurl; 
}

2、打开文件 source\module\website.php

搜索get_webthumb,找到$web['web_pic'] = get_webthumb($web['web_pic']);【注:该文件中有两个get_webthumb,需要全部修改】

全部修改成:

$row['web_pic'] = get_webthumb($row['web_pic'],$row['web_url']);


3、打开文件 module\siteinfo.php

搜索get_webthumb,找到$web['web_pic'] = get_webthumb($web['web_pic']);

替换成:$web['web_pic'] = get_webthumb($web['web_pic'],$web['web_url']);


4、打开文件 module\linkinfo.php

搜索get_webthumb,找到$link['web_pic'] = get_webthumb($link['web_pic']);

替换成

$link['web_pic'] = get_webthumb($link['web_pic'],$link['web_url']);

问题三、35dir分类目录发邮件报错password not accepted from server:535错误

邮件发送功能是每一个网站都需具备的最基本功能之一,它在注册、登录、找回密码等多处都可能会用到,所以出现这种发邮件出错的问题也是十分迫切需要解决的问题。从报错代码password not accepted from server:535可以初步判断应该是配置邮件时把密码弄错了。

35dir分类目录邮件配置.jpg

不知从何时起使用qq邮箱在第三方软件上发送邮件时所填的密码已经不是原来的qq密码了,而是单独生成的授权码。qq邮箱授权码可以在qq邮箱账户层级按指示生成。生成后把它填到SMTP服务器密码一栏中保存即可。

qq邮箱授权码获取.jpg

问题四、35dir分类目录验证码不显示问题

一次偶然的机会,一网友购买本站的35dir源码,安装后告诉小编说验证码不显示,这让小编很是不解。因为小编安装的两个35dir分类目录站点验证码都是正常显示的,到了他那里怎么就不能显示了呢?

35dir验证码不显示.png

带着问题小编先是检查了gd库,因为验证码的显示要gd库支持,结果gd库是打开的。确定gd库没问题后,小编接着更换php版本。因为网友安装的php版本是5.4的,而小编的两个站点分别是php5.2和php5.3的,所以决定把php5.4更换成php5.3,结果更换后还是不显示。。。。

“革命”尚未成功,仍需继续努力!在一次调试中,突然发现一个天大的错误:

Fatal error: Call to undefined function session_register()
in /www/wwwroot/www.xxx.org/source/include/captcha.php on line 4

于是快速定位到captcha.php文件,通过各方查找,原来php版本从5.4以后,不再需要使用session_register()进行注册了,而是将session_register("xxx");变成$_SESSION["xxx"];就可以解决旧版本转换新版本的问题

于是再对比35dir的源代码,问题一目了然,如下图所示

35dir验证码不显示问题定位.png

问题五、35dir分类目录进行意见反馈时报错Table 'dir_feedback' doesn't exist

意见反馈这个功能小编一直没怎么用,发现这个Table 'dir_feedback' doesn't exist问题的也是网友,从问题代码来看,出错的地方也很明显示,就是数据表 'dir_feedback'不存在导致的。既然是数据表问题,那就先从数据库入手排查。打开数据库,查看数据表名称,结果发现35dir分类目录在安装时生成的意见反馈数据库表的名称是feedbacks,而报错显示的是dir_feedback,很明显是在进行意见反馈操作时填写的表名错了,所以只需找到文件feedback.php并将代码

$DB->insert($DB->table('feedback'), $data);

中的feedback改为feedbacks再重新上传覆盖即可。

文件路径为:根目录/module/feedback.php


以上就是影响35dir分类目录正常使用的5大bug修改教程,其他关于35dir界面美化,功能新增等在此不展开介绍。有需要完整代码的请自行前往2018最新35dir分类目录源码完整版免费下载(已修复所有bug)下载


本文》有 3 条评论

  1. 访客 访客 说:

    不错,很全面 [face_36]

  1. 访客 访客 说:

    为博主的用心点赞👍

留下一个回复