我目前使用了一个技巧来获取WordPress的相对文件位置:wp_get_active_and_valid_plugins()
返回文件路径,并wp_settings.php
loops over them and includes the files. 所以全球$plugin
变量将引用您当前的插件(当然,只有在加载插件时,我才会将其保存在带前缀的全局变量中):
$monkeyman_Rewrite_Analyzer_file = $plugin;
因为插件也可以作为必须使用的或网络插件加载
these loops use other variable names, 完整的代码如下所示:
$monkeyman_Rewrite_Analyzer_file = __FILE__;
if ( isset( $mu_plugin ) ) {
$monkeyman_Rewrite_Analyzer_file = $mu_plugin;
}
if ( isset( $network_plugin ) ) {
$monkeyman_Rewrite_Analyzer_file = $network_plugin;
}
if ( isset( $plugin ) ) {
$monkeyman_Rewrite_Analyzer_file = $plugin;
}
后备方案仍然是
__FILE__
, 因此,如果将来有人更改循环变量名称,我的代码应该仍然适用于99%的安装,只有我的开发设置会失败,我可以轻松发布新版本。