插件更新: WP-EasyArchives 2.0

Aug 22nd, 2010 Add Comment

今天狠下心将 WordPress 存档插件 Easy Archives 更新了. 这次修改是为了解决两个问题:
1. 插件会加载多余的 CSS 和 JS.
2. JavaScript 事件触发后移.

最近我在对博客进行优化, 包括去除多余 DOM 节点, 减少请求, JS 后移等等, 当我发现以前自己做的一些插件跟我的想法相违背, 就很想将它改掉. WP-EasyArchives 会在每个页面加载 CSS 和 JS, 其实只需要在 Archives 页面加载; 另外, JavaScript 事件都是以通过属性加在 HTML 代码里面的, 却应该用 JS 动态绑定. 是时候下刀了...

这次修改主要有以下内容:

1. 添加 "使用 CSS" 选项
因为主题样式各异, 插件自带的样式表未必能满足所有需求. 添加这个选项可以选择不用自带的 CSS, 而将样式写在 style.css 中, 便于修改样式, 也可以减少一个 CSS 请求.

2. 对两个小图标做 CSS sprite
减少一个请求数.

3. 后移 JavaScript 初始化至 DOM ready
减少 JS 对加载页面的影响.

4. 去除对 Widget 的支持, 并将参数设置迁移到博客后台
对这个插件来说, Widget 尴尬令其定位混乱, 这种信息压根不应该出现在侧边栏, 故去之.

5. 修复一些 bugs
用户刷新页面后, 年份和作者下拉框应该定位到第一个选项.
选择使用 WordPress 自带的 jQuery 库时, 没有加载该 JS 库.

这次对代码改动非常大, 发现 bug 请务必通知我, 我会尽快修复.

声明: 本文采用 BY-NC-SA 协议进行授权. 转载请注明转自: 插件更新: WP-EasyArchives 2.0

  1. http://0.gravatar.com/avatar/490cf262668eebb0f0f1a50d9d48d702?s=32&d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D32&r=G

    @解范儿
    请确定两个事情.
    1. wp_footer() 和 wp_head() 需要写入主题, 分别在 header.php 和 footer.php 两个文件中.
    2. 进入插件设置页面, 查看 JavaScript Library 是否选中, 如果你选项间的区别, 请选择第一项.

    @xiangzi
    嗯, 是的. 需要将 wo_footer() 放在 jQuery 之后. 这是 WordPress 主题开发的要求, wp_footer() 是 body 结束之前的最后一段代码.

  2. http://0.gravatar.com/avatar/253b4007557539ce0e443809f108017c?s=32&d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D32&r=G

    @mg12
    @解范儿
    有的插件要是也加载了Jquery的话可能会有冲突,
    实测这个插件和MG12的最新评论会有冲突,需要手工修改JS调用
    我的就是,把JS代码调用部分又改了一下,貌似是钩子的问题
    再就是如果主题自带Jquery的话,要把 wp_footer();
    加到Jquery之后。
    另外
    @解范儿
    你的可以显示,不过要等script.js全部加载了以后才好用,你的Jquery在这里就有,没必要再去Google加载一遍

  3. http://1.gravatar.com/avatar/b357e0b18d7dbca2d54bbdb748cd1b33?s=32&d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D32&r=G

    安装了,可是不能展开折叠,提示网页上有错误怎么回事?

  4. http://0.gravatar.com/avatar/490cf262668eebb0f0f1a50d9d48d702?s=32&d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D32&r=G

    @MR.G
    JS 没被加载, 请检查你的 footer.php 文件内是否包含以下的代码.

    <?php wp_footer(); ?>

    并且后台选项中的 JavaScript 库选择无误. (如果你不知道怎么选, 请选中第一或者第二项.)

  5. http://1.gravatar.com/avatar/363102a7f90cc7bf7912421fbcb8fef1?s=32&d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D32&r=G

    @mg12 我的归档可以显示了,但是折叠和展开功能都无法使用,是JS的问题吗、

  6. http://0.gravatar.com/avatar/8e6284c2d613e5ffd9661ff5833727cc?s=32&d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D32&r=G

    已经更新到2.0了,感觉跟之前差不多。

  7. http://0.gravatar.com/avatar/433f95c43085ae6c2d6b6f5f03daefb9?s=32&d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D32&r=G

    Widget 为什么要去掉呢,我觉得放在侧边栏挺方便的呀

  8. http://1.gravatar.com/avatar/79c34a8e43c9c81dbb8e444ecdf1bb61?s=32&d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D32&r=G

    用了更新版的,但无法显示,我用的是2.92 不知道是不是版本问题,还是退到旧版本

  9. http://0.gravatar.com/avatar/ed469eab158ae60eff931e1dda81191a?s=32&d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D32&r=G
  10. http://0.gravatar.com/avatar/08dec116257864bbda25ac0b36662802?s=32&d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D32&r=G

    this is good thanx admin

Comment pages