在WordPress插件开发中使用wp-load.php的问题

时间:2015-03-27 作者:Foysal

为什么用这个不好

include("../../../wp-load.php"); ??

正确的使用方法是什么??

谢谢

2 个回复
SO网友:bueltge

此解决方案中的问题是,此文件的位置不同。WordPress允许定义插件和主题文件夹,不同于对wp-load.php.

自定义路径示例

//*
// Custom content directory
define( \'WP_CONTENT_DIR\',  dirname( __FILE__ ) . \'/wp-content\' );
define( \'WP_CONTENT_URL\',  \'http://\' . $_SERVER[\'HTTP_HOST\'] . \'/wp-content\' );
// Custom plugin directory
define( \'WP_PLUGIN_DIR\',   dirname( __FILE__ ) . \'/wp-plugins\' );
define( \'WP_PLUGIN_URL\',   \'http://\' . $_SERVER[\'HTTP_HOST\'] . \'/wp-plugins\' );
// Custom mu plugin directory
define( \'WPMU_PLUGIN_DIR\', dirname( __FILE__ ) . \'/wpmu-plugins\' );
define( \'WPMU_PLUGIN_URL\', \'http://\' . $_SERVER[\'HTTP_HOST\'] . \'/wpmu-plugins\' );
/**/
为什么这是错误的以下三点是复制形式Ottos post. 你也可以在这篇文章中找到其他选择。

您不知道wp加载的第一条线索。php实际上是。插件目录和wp内容目录都可以在安装中移动。所有的WordPress文件都可以用这种方式移动,你要四处搜索吗

SO网友:Mark Kaplun

这很糟糕,因为在任何具有安全意识的wordpress设置中,除了根文件夹外,您将无法在任何文件夹上直接执行php,而根文件夹是通常使用该行代码的情况。

没有正确的方法来“那样做”,永远不应该这样做。

结束