Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[修改] 有没有人需要自定义【修改,添加】附件图标的,我摸索出来了

[复制链接]
06climate 发表于 2011-7-5 14:01:32 | 显示全部楼层 |阅读模式
因为我论坛的附件有很多格式,官方的只能显示为一个大问号,于是我搜索到了这篇帖子

https://discuz.dismall.com/forum.php?mod=viewthread&tid=2242852 (感谢该作者的贡献)


使用上面这篇帖子达到的效果是,如果你的附件后缀对应的图标在后台没有,就会显示为一个红叉叉,不会自动显示为unknown.gif,因为我们不能保证会员上传的所有附件后缀都已经有对应的图标上传,所以就想自己想办法再次修改,没学过php的我花了半天终于搞定了,效果如下:



第一个框上的图标我后台没有上传对应的图标,显示为unknown.gif,我把官方的unknown.gif换成了一个好看点的(非必须,所有图标都在 static\image\filetype下面,下同)
第二个框上的是DZ自带的
第三个框上的就是我自己定义的了
不知道有没有需要的,我只想分享一下我的经验,便于帮到需要的人,谢谢!
===================================================
1、找到  source\function\function_attachment.php文件,复制一份备份起来
2、打开该文件,把第59-63行
  1. } elseif($type) {
  2. $typeid = 1;
  3. } else {
  4. $typeid = 0;
  5. }
复制代码

替换为下面的代码:

  1. } elseif($type) {
  2. $RootDir = $_SERVER['DOCUMENT_ROOT'];
  3. //下面两处.jpg可以自己改为其他格式
  4. $fileDir = "$RootDir/static/image/filetype/".trim($type).".jpg";

  5. if(file_exists($fileDir))
  6. {
  7. $typeid = 0;
  8. $attachicons[0] = $type.".jpg";     
  9. }
  10. else
  11. {
  12. $typeid = 1;
  13. }
  14. } else {
  15. $typeid = 1;
  16. }
复制代码

然后保存该文件并上传到服务器替换原文件就可以了。
这段代码的主要意思是:

    当DZ查找要用那个图片作为附件图标的时候,如果在第59行前面找到了,就直接确定了,这些代码不被执行;
如果没有找到,没改之前 typeid就变成了1,也就是第17行的unknown.gif图标,改过了之后就先获得这个附件的后缀,比如后缀为 123,那么就在filetype里面查找有没有 123.jpg  (图片格式可以自己改,gif我觉得质量损失太严重,就改成了jpg),如果找到了,就用它,找不到就用unknown.gif(也就是typeid=1),这样就避免了我上面贴的那个帖子会出现红叉叉的问题

    因此,如果你需要增加一个自定义的后缀图标只要改好了这个文件之后,在filetype文件夹里面上传你要的附件图标就行,这个图标的命名格式就是  附件后缀.图片格式  如  docx.jpg

    如果你想修改DZ自带的图标,一种可以直接上传DZ定义的文件图标覆盖原图标,另一种就是删掉对应行的判断语句,然后上传新的后缀.格式 图标文件到服务器就好了,比如我就把office文件的图标由一个图标变成了 ppt word excel access四种图标,下面是我修改的那个php文件,实在不会改就用我的吧。

    用我的需要上传下面这几个office对应的图标到你的后台,要不然office的图标就是默认的unkown.gif了,还有我用的是jpg格式,你不改的话也要确保自定义的图标为JPG格式,自带的gif还可以正常使用。









评分

2

查看全部评分

 楼主| 06climate 发表于 2011-7-5 14:11:47 | 显示全部楼层
我错了 不该来发的,没人要
回复

使用道具 举报

飞行小子 发表于 2011-7-5 14:23:42 | 显示全部楼层
什么东东。
回复

使用道具 举报

桃源老赵 发表于 2011-7-5 14:28:19 | 显示全部楼层
帮顶,我的不是下载论坛
回复

使用道具 举报

柳丶暗 发表于 2011-7-5 14:30:43 | 显示全部楼层
很不错啊,前排支持一下,嘿嘿欢迎观临我的城市    http://bbs.cityme.net
回复

使用道具 举报

 楼主| 06climate 发表于 2011-7-5 16:25:47 | 显示全部楼层
终于有人回复了,以后有好东西还回来共享的~
回复

使用道具 举报

→奇仁√ 发表于 2011-7-5 16:28:17 | 显示全部楼层
谢谢楼主,我正好需要!!
回复

使用道具 举报

cnshag 发表于 2011-7-5 20:49:25 | 显示全部楼层
这个确实蛮不错的。赞一个。
回复

使用道具 举报

sbigeyid520 发表于 2011-7-5 20:51:35 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

ilei365 发表于 2011-7-5 20:56:12 | 显示全部楼层
支持个。。。。。。。
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-15 17:48 , Processed in 0.042602 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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