wordpress下载管理插件Hacklog-downloadmanager v2.1.4

新版本增加的功能,请至WP官方查看changelog: http://wordpress.org/extend/plugins/hacklog-downloadmanager/changelog/

本插件修改自wp-downloadmanager
wp-downloadmanager此插件很好很强大,但是个人觉得有点笨重。于是修改、精简、汉化完善之。
目前此插件的代码基本已经重写。

本来打算给它取名叫:wp-downloadmanager荒野无灯修改完善汉化版
但是wordpess的自动检查插件更新功能会把我这个修改版的插件当成wp-downloadmanager ,然后提示说该插件已经有更新版本,可以升级。这样可不行,一升级这不又变回了原来那个插件了。于是,只好将之改名为:hacklog-downloadmanager 。
希望原作者可以见谅。
昨天晚上奋斗到了4:15分。修改完善wp-downloadmanager。 :!:
原插件是英文版,我花时间将它汉化了,希望可以帮助到英文不好或者不喜欢英文的朋友。(PS:个人水平有限,如有翻译不当之,欢迎指正-_-)

插件下载

插件下载:
如需要老版本,请自wp plugins下载。

各版本功能区别:
1.5.3 新增加popup显示方式(弹出层)
2.0.0 代码基本重写,采用oop.
2.0.2 为bug修复后的稳定版本。
2.0.4 添加本地服务器文件时不再采用select方式,而是采用类似文件管理器的文件浏览方式。
2.1.0 为自2.0.4起bug修复后的稳定版本。
2.1.2 为优化版本:增加了繁体中文语言包(感谢 冷.吉米),优化了js和css加载,增加了对于不标准的WordPress主题的兼容性支持,修改了默认弹出层样式
2.1.3 为跟随WP 3.3一起更新。增加对WP 3.3的支持,优化和改进了部分代码。

常见问题解答:请点击这里




关于首页调用

有很多童鞋询问,这里放出一个代码,考虑到禁用插件以后对主题的影响,此功能暂不加入插件中,放在主题代码中更合适:
0×01.将如下代码加入当前主题functions.php 最后(自然是要在php标签内的,这个不用我说了吧? :arrow: ):
a. 2.2.0以后版本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/**
 *Hacklog DownloadManager 2.2.0以后版本 首页调用函数 by 荒野无灯
 *author: 荒野无灯
 *author url: http://ihacklog.com
 *date: 2011-12-21
 */

/* start Hacklog-downloadmanager 首页调用函数 by 荒野无灯*/
function the_hacklogdownload_file()
{
    if( !class_exists('hacklogdm') )
    {
        return '';
    }
    global $post;
    $id=hacklogdm::get_download_ids($post->post_content);
    if ( !empty($id) )
    {
        $hacklogdm = hacklogdm::instance();
        echo $hacklogdm->download_shortcode( array('id'=>$id) );
    }
    else
    {
        echo '';
    }
}
/* end Hacklog-downloadmanager 首页调用函数 by 荒野无灯*/

b. 2.2.0以前的版本首页调用请用下面代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
/**
 *Hacklog-downloadmanager 首页调用函数 by 荒野无灯
 *author: 荒野无灯
 *author url: http://ihacklog.com
 *date: 2011-12-21
 */


/* start Hacklog-downloadmanager 首页调用函数 by 荒野无灯*/
function the_hacklogdownload_file()
{
    if( !class_exists('hacklogdm') )
    {
        return '';
    }
    global $post;
    $id=hacklogdownload_do_get_downid($post->post_content);
    if ( !empty($id) ) {
        $hacklogdm = hacklogdm::instance();
        echo $hacklogdm->download_shortcode( array('id'=>$id) );
    } else {
        echo '';
    }
}
function hacklogdownload_do_get_downid($content)
{
    $val= '';
    if(preg_match_all("@\[download id=\"([0-9,\s]+)\"\]@",$content,$matches) )
    {
        $val = implode(',', $matches[1]);
    }
    return $val;
}
/* end Hacklog-downloadmanager 首页调用函数 by 荒野无灯*/

0×02. 修改本插件hacklog-downloadmanager/includes/hacklogdm.class.php 第34行为:

1
    private static $_singular_only = FALSE;

0×03. 修改你主题的index.php文件,在适当的地方,这个要看你主题了。加上如下:

1
        the_hacklogdownload_file(); //下载调用

这条代码一般是放在the_excerpt() 或者 the_content() 的前面即可。
OK,完工。
效果见我博客首页。


目前我所用的自定义CSS弹出层模板

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
.hacklogdownload_downlinks
{
    width:500px;
}

.hacklogdownload_down_link
{
    margin-top:10px;
    background:#E0E2E4;
    border:1px solid #330;
    color:#222;
    padding:5px 5px 5px 20px;
}

.hacklogdownload_down_link a
{
    color:#57d;
}

.hacklogdownload_views
{
    color:red;
}

.hacklogdownload_box
{
    border-bottom:1px solid #aaa;
    padding:10px 0;
}

.hacklogdownload_box_content
{
    line-height:18px;
    padding:0 0 0 10px;
}

.hacklogdownload_box_content p
{
    margin:5px 0;
}

.hacklogdownload_box_content a
{
    color:#D54E21;
}

.hacklogdownload_box_content a:hover
{
    color:#1d1d1d;
}

.hacklogdownload_left
{
    float:left;
    width:320px;
}

.hacklogdownload_right
{
    width:160px;
    float:right;
    margin:0 auto;
}

.hacklogdownload_right img
{
    max-width:160px;
}

.hacklogdownload_notice
{
    padding-top:10px;
    text-align:center;
}

#facebox .content
{
    width:600px;
    background:none repeat scroll 0 0 #E0E2E4;
    color:#333;
}

#facebox .popup
{
    border:6px solid #444;
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<div id='hacklog_download_list%FILE_ID%' style='display:none'>
<div class='hacklogdownload_box'>
<strong>下载声明:</strong>
<div class='hacklogdownload_box_content'>
    <p>
1. 本站所有软件和资料均为软件作者提供或网友推荐发布而来,仅供学习和研究使用,不得用于任何商业用途。如本站不慎侵犯你的版权请<a href='http://ihacklog.com/about'>联系我</a>,我将及时处理,并撤下相关内容!
</p>
<p>
2. 访问本站的用户必须明白,本站对所提供下载的软件和程序代码不拥有任何权利,其版权归该软件和程序代码的合法拥有者所有,请用户在下载使用前必须详细阅读并遵守软件作者的“使用许可协议”。
</p>
</div>
</div> 

<div class='hacklogdownload_box'>
<strong>文件信息:</strong>
<div class='hacklogdownload_box_content'>

<div class="hacklogdownload_left">
<p>文件名称:<img src='http://ihacklog.com/wordpress/wp-content/plugins/hacklog-downloadmanager/images/ext/%FILE_ICON%' alt='' title='' style='vertical-align: middle;' />&nbsp;&nbsp;%FILE_NAME% </p>
<p>文件MD5:%FILE_HASH%</p>
<p>文件大小:%FILE_SIZE%</p>
<p>上传日期:%FILE_DATE%</p>
<p>更新日期:%FILE_UPDATED_DATE%</p>
<p>文件描述:%FILE_DESCRIPTION%</p>
</div>

<div class="hacklogdownload_right">
<strong>下载:</strong><a href='%FILE_DOWNLOAD_URL%' title='download %FILE_NAME%'><img style='vertical-align: middle;' src='http://ihacklog.com/wordpress/wp-content/plugins/hacklog-downloadmanager/images/download.png' alt='download'/></a>
</div>


</div>
<div style='clear:both'></div>
</div>
<div class="hacklogdownload_notice">
<span style='color:#f00;'>软件版权归原作者所有.本站下载不支持迅雷等工具.</span>
</div>
</div><!-- end hacklog_download_list%FILE_ID% -->


<div class='hacklogdownload_down_link'>
<img src="http://ihacklog.com/wordpress/wp-content/plugins/hacklog-downloadmanager/images/ext/%FILE_ICON%" alt="" title="" style="vertical-align: middle;" />&nbsp;&nbsp;%FILE_NAME%&nbsp;&nbsp;<strong><a rel='facebox' href='#hacklog_download_list%FILE_ID%' title='download %FILE_NAME%'>下载</a></strong> (%FILE_SIZE%, %FILE_HITS% 次)
</div>

安装:常规安装即可。
注意:如果不能上传或者下载文件,请到后台“下载选项”里修改成正确的下载路径和下载URL。
请确保 wp-content目录下的files文件夹具体读写权限。 :razz:

更新:
更新到2.0.2的方法:
手动更新的方法:重新下载新版zip文档,覆盖本插件目录下面的php文件和po/mo文件即可。
后台自动更新:更新后如插件处于非启用状态,重新启用即可。

更新到1.5.6的方法:
重新下载新版zip文档,覆盖本插件目录下面的php文件和po/mo文件即可。

更新到1.5.5的方法:
覆盖本插件目录下面的hacklog-downloadmanager.php和 hacklog-downloadmanager-zh_CN.mo 、hacklog-downloadmanager-zh_CN.po文件即可。

更新到1.5.4的方法:
覆盖本插件目录下面的hacklog-downloadmanager.php和 hacklog-downloadmanager-zh_CN.mo 、hacklog-downloadmanager.po文件即可。

更新到1.5.3的方法:
重新下载新版zip文档,覆盖本插件目录下面的php文件即可。
并进入后台“下载选项”做相关设置,点击“保存所有更改”.

TODO:
增加:允许链接的站点
增加调用
增加下载页面模板


默认的下载样式相当简洁,如果想弄得好看一点,根据自己的实际情况修改下模板样式吧:
下面附上我的模板:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<p><table style="background-color:#e5e5e5;width:450px;">
<tr>
<td><img src="http://www.ihacklog.com/wordpress/wp-content/plugins/hacklog-downloadmanager/images/ext/%FILE_ICON%" alt="" title="" style="vertical-align: middle;" />&nbsp;&nbsp;<strong><a href="%FILE_DOWNLOAD_URL%">%FILE_NAME%</a></strong> </td>
<td>文件大小:%FILE_SIZE%</td>
</tr>
<tr>
<td>更新时间:%FILE_UPDATED_DATE% </td><td>累计下载:%FILE_HITS% 次 </td>
</tr>
<tr>
<td>MD5 验证:%FILE_HASH% </td><td>
<a href="http://www.ihacklog.com/down/49" target="_blank">[MD5验证工具下载]</a>  </td>
</tr>
</table>
</p>

FAQ:
1.

A:如何从 wp-downloadmanager 转到 hacklog-downloadmanager ?
Q:如果以前安装过wp-downloadmanager ,先禁用wp-downloadmanager。
然后运行一下 update_to_hacklog.php:

http://www.你的域名.com/wp-content/plugins/hacklog-downloadmanager/update_to_hacklog.php

提示:成功删除file_category列,现在你可以使用 wp-downloadmanager 荒野无灯修改版了-_-!
即可使用了。
然后可删除此文件。
如果没有安装过wp-downloadmanager就直接激活插件就是了。

2.
Q:为何我安装了插件却无法显示弹出层?
A:可能是你的主题未按常规出牌。。。。
请检查:
你主题的footer.php中有?

1
<?php wp_footer(); ?>

若以上检查通过,则再看其jquery是如何加载的,如果是在模板中直接显示的,建议更改为如下标准方式加载Jquery:

1
2
3
4
function my_scripts_method() {
    wp_enqueue_script( 'jquery' );
}    
add_action('wp_enqueue_scripts', 'my_scripts_method');

如果你想使用你主题目录下面的Jquery的话,请采用如下语句(假设jquery.min.js是你主题目录下面jquery文件名):

1
2
3
4
5
6
function my_scripts_method() {
    wp_deregister_script( 'jquery' );
    wp_register_script( 'jquery', get_template_directory_uri(). '/jquery.min.js','1.6',array(), true);
    wp_enqueue_script( 'jquery' );
}    
add_action('wp_enqueue_scripts', 'my_scripts_method');

切勿在模板中直接echo 输出jquery脚本,如果你不想给自己带来麻烦的话。因为这样做,你可能在安装其它插件时还会遇到问题。

3.

关于jquery.lazyload 导致图片无法显示的解决

方法1:
改变lazyload调用,排除download 图片:

1
$("img:not([alt='download'])").lazyload();

方法2:
用css background-image来代替直接img标签调用

喜欢这篇文章吗?

请订阅本站 RSS feed填写您的邮件地址,订阅我们的精彩内容:

相关日志

回复 (303)

  1. 小也  / 回复

    站长你好,我用的是vps用了kloxo面板装了这个插件后有点问题。在添加文件–>本地文件点了浏览文件后,文件列表中是空白的,不知道为何,我在之前虚拟主机上测试正常能看到我通过ftp上传的文件。我十分确认文件路径没有错目录可读写。 :arrow: 还有一点我在vps上装插件后点添加文件提示我没有file这个目录,我需要用ftp创建一个,但是在虚拟主机上却没有这个提示,不知道是不是服务器那里设置不对。 :arrow: 望指点谢谢。 :oops:

    • 荒野无灯  / 回复

      @小也
      你好,这是服务器权限设置的问题。如果你的vps上是用的suphp执行php的话,就不存在没有权限这个问题。如果是其它方式,则你必须给files目录读写权限。

  2. Love下载  / 回复

    不能添加迅雷地址,非要添加http://才可以,这个能解决吗?

  3. Love下载  / 回复

    不能添加迅雷地址,非要添加http://才可以,不适合我

  4. emCupid  / 回复

    用FCKEditor会把[download id="222"]中的引号转化成",这样就无法显示下载链接,可否解决?

  5. imchen  / 回复

    希望在更新的版本中,添加一些图标。例如torrent种子的图标,而不是一个问号来替代。

  6. guger  / 回复

    你好,为什么这个插件在我首页显示不了弹出层,而在文章页面却可以呢?郁闷,之前3.2.1的时候可以的,更新了3.3就不行了。

  7. 小李家园  / 回复

    :wink: 老大有没有发现新版弹出框在chrome浏览器中错位,FF浏览器正常!

  8. 残影  / 回复

    刚刚看到插件更新了~~ :-P

  9. 洋洋  / 回复

    强大啊。。

  10. 形空  / 回复

    好插件, 已经用上..

  11. 忆秦娥  / 回复

    站长你好,请问下载样式hacklogdownload_down_link,在哪儿设置啊?

  12. ycg2u  / 回复

    不如自己做了一个WP下载应用界面。呵呵!
    http://ihacklog.com/gogogo/aHR0cDovL2RsLnR0MnUuY29tL2ZpbGVzLzEuaHRtbA==
    一起交流学习

  13. Mr.g  / 回复

    无灯兄,我在后台启用此插件的时候报了以下错误:Warning: call_user_func_array() expects parameter 1 to be a valid callback, class ‘hacklogdm’ does not have a method ‘downloads_favorite_actions’ in D:\xampp\htdocs\wordpress\wp-includes\plugin.php on line 166

    求解释、、、 :arrow:

  14. yywr  / 回复

    一直在找,原来是这货啊··

  15. 小左  / 回复

    搞点小附件下载,还是很不错的,轻量化!

  16. YUHao  / 回复

    咦,这个很适合我用呢!

  17. Bugsong  / 回复

    请问博主,这个插件可以在弹出的窗口显示多个下载链接吗?一个文件的多个连接

  18. 老Z  / 回复

    已经搞定了,原来是没有选择弹出层。

  19. 老Z  / 回复

    老大,我的地址是?dl_id=2,没有hacklog_download_list1之类的,弹窗出不来,在源码里也没看见有样式加载,该怎么弄啊?

  20. love02xp  / 回复

    不知道是做什么了,
    有没有演示页面啊?

  21. ylsnuha  / 回复

    新的版本我在本地测试可以用,但是在我博客上就用不了。。。同样一个主题~ 是不和什么插件冲突了还是怎样 貌似是facebox那个js没加载上 不知道是哪里出问题 还希望帮下忙。。。 加下Q吧397984015 以后还有别的问题也好方便请教 哈哈 我比较喜欢折腾wp。。。

  22. 清音王梓  / 回复

    不知道为什么,我用的默认配置,下载压缩的zip文件,下载的时候都提示未知文件格式,就是下载下来是没有后缀名的。 :cry:

  23. xiaoxiaode  / 回复

    请问怎样修改盗链页面?只显示Please do not leech.我想修改这个页面,但没找到。

    • 荒野无灯  / 回复

      @xiaoxiaode
      后台禁用来路检测即可。Check HTTP referer: not enabled

      • xiaoxiaode  / 回复

        @荒野无灯
        我的意思是当别人盗用我的下载链接的时候显示其它的内容,比如说跳转回首页。

  24. Demon  / 回复

    乖乖。又更新了呢。升级去。

  25. 沫夏  / 回复

    :)
    火狐的错误控制台打印这样的错误,IE在状态栏也有叹号~
    错误: unterminated string literal
    源文件:http://ihacklog.com/php/wordpress/plugins/hacklog-downloadmanager.html
    行:905,列:33
    源代码:
    !window.jQuery && document.write(‘\’);

  26. win8迷  / 回复

    用过这个,不like。。。。 :oops:

    • 荒野无灯  / 回复

      @win8迷
      看个人喜好了,此程序原本自用的,后来根据大家的需求做了些修改,发布出来。

  27. ylsnuha  / 回复

    快点更新吧~~ 2.1.1不能弹窗 2.0.2是可以滴 期待更新啊~~ :wink:

  28. 无心恋战  / 回复

    无灯大师- -,特别喜欢你的下载插件,碰到跟很多人一样的问题 弹出层没有效果,点击下载后只会在URL后面多加#hacklog_download_list1,效果出不来,根据你说的FOOTER.PHP里面的那行代码,检查过了,有的,我认为是jquery问题,但你说的比较笼统,我是一个新人,不懂PHP,还请详细说明下怎么弄这个jquery问题,如有可能,请加我Q14576337协助解决一下,再次膜拜。

1 2 3 4

发表评论 修改评论取消编辑

允许使用的标签 - 您可以在评论中使用如下的 HTML 标签以及属性。

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

 :wink:  :-|  :-x  :twisted:  :)  8-O  :(  :roll:  :-P  :oops:  :-o  :mrgreen:  :lol:  :idea:  :-D  :evil:  :cry:  8)  :arrow:  :-?  :?:  :!:

开灯
如无法留言,请刷尝试新一下页面~~祝您春节愉快!
×