如何获取wp包含目录?
我需要为我的 wp 插件开发做 require_once 。在我看来,我需要使用绝对路径。
我当前的解决方案是
$delimiter = strpos(dirname(__FILE__), "/")!==false?"/":"\\"; //win or unix?
$path = explode($delimiter, dirname(__FILE__));
require_once join(array_slice($path,0,count($path)-3),$delimiter) . "/wp-admin/includes/plugin.php";
我想知道是否有更好的方法来处理这个问题,一种通用方法。
如果wp插件目录结构发生变化怎么办。所以这部分 count($path)-3
将不再有效......
I need to do require_once for my wp plugin development. It seems to me that I need to use absolute path.
my current solution is
$delimiter = strpos(dirname(__FILE__), "/")!==false?"/":"\\"; //win or unix?
$path = explode($delimiter, dirname(__FILE__));
require_once join(array_slice($path,0,count($path)-3),$delimiter) . "/wp-admin/includes/plugin.php";
I wonder if there is a better way to handle this, kind of general approach.
What if the wp plugin directory structure changes. So this part count($path)-3
won't be valid any more ....
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
WordPress 在启动时建立包含目录的路径。
require_once ABSPATH 。 WPINC。 '/your-file.php';
WordPress establishes the path to the includes directory on startup.
require_once ABSPATH . WPINC . '/your-file.php';
尝试:
或者如果您位于
__DIR__
上,则将__DIR__
替换为dirname(__FILE__)
PHP 5.3或者你可以尝试:
Try:
Or replace
__DIR__
withdirname(__FILE__)
if you are on < PHP 5.3Or you could try:
可以利用 WP_CONTENT_DIR 并制作一个很好的常量
或函数
Its possible to take advantage of WP_CONTENT_DIR and make a nice constant
or a function
您是否尝试过执行 bloginfo('wpurl') / wp-content/plugins ?
Have you tried doing bloginfo('wpurl') / wp-content/plugins ?
我曾经将它定义为一个常量,就像其他常量一样......
人们仍然可以使用
is_dir()
检查并进一步遍历(如果需要)。I used to define it as a constant, like the others ...
One still could check with
is_dir()
and traverse further, if required.