使用插件与修改源代码

发表评论 阅读评论

在使用wp(wordpress)的过程中,我们一定会不满足当前的功能或者样式,那么就要对他进行改造.改造的方式无非就那么3种:

  • 修改wp源代码
  • 修改主题源代码
  • 使用插件

修改wp源代码

曾经刚使用wp的时候为了实现注册后直接显示密码,而不必再到邮箱里查看的功能,我在网上搜到了教程是修改wp的源代码的,具体怎么修改现在已经忘记了,不过这已经不重要了,重要的是当我升级了wp后这些所做的修改都被还原了,等于没改.

可见修改wp的源代码是万万不可的,即便是你不想更新wp也是不行的,因为虽然现在想着再也不更新wp了,说不定哪天wp新增了什么特性,或者其他原因又想更新wp了,那么再去找对wp的修改是很让人头痛的事情.相对于wp的频繁更新,主题就不会更新那么频繁了.

修改主题源代码

修改wp源代码的存在更新后修改消失的缺点,修改主题源代码同样存在这样的缺点,不过好在主题的文件也就那几个,不会有很多,而且有的主题也不会频繁更新,就像我现在使用的inove主题,从使用至今一次更新也没有过.

可是当我想换个主题的时候,发现在原来主题上所做的修改都不见了,因为修改的代码都在之前的主题上.这样我要是想要更换另一个主题,那么必须将在原来主题上所做的修改再在新主题上重新修改一遍.旧主题已经使用很长时间了,期间做过多次修改,都没有做个记录,难道要我下载一份未修改的旧主题跟我已修改的对比一下吗,天啊,我不敢想象这是多么痛苦的一件事情.

如果有一些相对独立的功能,比如说将评论的里的链接重定向,交互式显示隐藏Flash.这些功能都跟主题没有关系,那么可以抽出来这部分作为插件,那么当更新或者更换主题后,这些不会跟主题一起消失.

使用插件

使用插件确实是比较好的方式,因为它跟主题分离了,不会因为主题的变化而变化.但是插件也不是非常完美的.
首先,很多人都一直认为的,插件比直接修改主题要消耗更多的性能,其实这是一个误区,插件确实要比修改主题要用更多的性能开销,但是这些的可以忽略的(就好比多调用了一个函数).如果使用插件会消耗更多的性能,那么直接在主题里修改代码同样也会消耗那么多性能,因为它们实现的功能一样,代码也基本一样.
其次,插件对于要在页面的特定位置显示内容就显的有些无能为力,比如说我想要在页面底部显示网站备案号.由于wp不能将页面的所有位置都提取成hook(钩子),而这部分也是由主题来完成的,单凭插件本身就没有办法实现的.

结语

既然不论是使用哪种方式都不是完美的方式,我们总不能什么事也不做,让本想的功能或样式就这样消失在萌芽状态吧.
再回过头来分析下,直接修改wp源代码的方式太粗暴了,要担很大的风险,要坚决反对.然后就剩下修改主题代码和使用插件.看到使用插件还是很好的,只有要在特定位置(wp没有hook)显示内容的情况下才不好好用,那么我们就优先使用插件,插件不能满足需求的时候,再配合少量的修改主题代码来实现.
当然,像上面提到的在页面底部显示备案号,这类小的修改,就直接修改主题,不用再抽取成插件了.只是记住要做好记录就行了.
最好得出的实现方式的优先级为:
独立功能优先使用插件->功能由插件实现,调用位置由主题实现->小修改直接主题实现->万万不能修改wp源文件.

标签: ,

  1. 雷依依 | #1

    我一般都是安装插件来解决问题的

  2. 好东家 | | #2

    学习学习,增加知识

  1. 本文目前尚无任何 trackbacks 和 pingbacks.
回到顶部