WordPress 技巧:如何設(shè)置插件的加載順序?
默認(rèn)的情況下,WordPress的插件是按照插件的字母順序加載的,比如a/a.php是比b/b.php先加載的,那么我們需要更改插件的加載順序如何操作呢,由于激活的插件是存在act...
默認(rèn)的情況下,WordPress 的插件是按照插件的字母順序加載的,比如 a/a.php 是比 b/b.php 先加載的,那么我們需要更改插件的加載順序如何操作呢,由于激活的插件是存在 active_plugins 的 option 里面,我們只需要激活或者停用插件的時(shí)候,系統(tǒng)更新 active_plugins 這個(gè) option 值之前 hook 它就可以。
比如下面的代碼,我們可以把微信機(jī)器人插件設(shè)置為最后加載:
- dd_filter('pre_update_option_active_plugins', 'weixin_robot_set_plugin_load_late
- function weixin_robot_set_plugin_load_late($active_plugins){
- $weixin_plugin = plugin_basename(WEIXIN_ROBOT_PLUGIN_FILE);
- if(false !== ($plugin_key = array_search($weixin_plugin, $active_plugins))){
- unset($active_plugins[$plugin_key]);
- $active_plugins[] = $weixin_plugin;
- }
- return $active_plugins;
- }
注:
一般來說如果插件里面都全是函數(shù),而沒有立刻執(zhí)行的代碼,插件的加載順序是沒有關(guān)系,如果需要在插件里面有立刻執(zhí)行的代碼,最好放到 plugins_loaded action 里面執(zhí)行,這樣 action 的意思是所有的插件加載完成之后執(zhí)行的動(dòng)作。
-
無相關(guān)信息
分享到:
投訴收藏