我正在开发一个使用WordPress运行的项目 - 所以,所有项目文件都位于wordpress文件夹中名为WP_project
的文件夹中。
现在,并非所有用户都在root用户中安装了wordpress,而是在文件夹中(例如对于子域)。
所以我可以简单地检查(在安装过程中)wordpress文件夹是否在根目录中,如果是,那很好,如果没有,我将不得不暂停安装并要求用户给出正确的路径,那就是问题。
一个 - 并非所有用户都是计算机,并且他们的主机可能已将WP文件夹放在其他位置而未通知用户,因此他们可能不知道它在哪里,或者更糟 - 他们可能不会知道他们甚至被要求做什么......
两个 - 即使我做了一些如何找到WP文件夹,我如何在每个需要知道的脚本中实现它?例如,这是我在每个脚本(项目中)上得到的:
if(file_exists($_SERVER['DOCUMENT_ROOT'].'/wordpress')){
$folder_rt=$_SERVER['DOCUMENT_ROOT'].'/wordpress';
}elseif(!file_exists($_SERVER['DOCUMENT_ROOT'].'/wordpress')){
$folder_rt=$_SERVER['DOCUMENT_ROOT'];
}
那是做什么的; 1 检查rootpress中是否存在wordpress文件夹。 2 如果确实如此,那就很好,将$folder_rt
分配给它的路径,但如果没有;只需将$folder_rt
分配给根路径(假设WordPress安装在根目录中)。
因此,如果我确实找到了文件夹路径(最终),我将如何在每个脚本中为其分配$folder_rt
。我无法将路径保存在单独的文件中,因为那时我必须在每个脚本中包含/要求单独的文件 - 这是无法完成的,没有文件夹的路径(使用绝对路径)。将路径存储在DB中也一样,我必须为函数创建一个单独的文件来检查数据库(因为我不认为它在每个脚本中安全存储敏感数据库信息......)。
我有点想出一个解决方案,但我相信一定有更好的方法,并没有真正考虑过它;
安装时,如果找不到WP文件夹,请询问用户该路径,然后将该路径存储在单独的文件中 root 中。然后,我可以简单地在每个脚本上检查该文件...所以不是上面的代码示例,我可以在每个脚本中都有这样的东西:
if(file_exists($_SERVER['DOCUMENT_ROOT'].'/wordpress')){
$folder_rt=$_SERVER['DOCUMENT_ROOT'].'/wordpress';
}elseif(file_exists($_SERVER['DOCUMENT_ROOT'].'/wp-config')){
$folder_rt=$_SERVER['DOCUMENT_ROOT'];
}
elseif(file_exists($_SERVER['DOCUMENT_ROOT'].'/project_pathfile.php')){
require_once($_SERVER['DOCUMENT_ROOT'].'/project_pathfile.php');
$folder_rt=$path_from_sep_file;
}
必须有一种更好,更专业的做法吗?
Anny的建议?谢谢
答案 0 :(得分:0)
dirname(__FILE__)
(或者只是{+ 1}在5.3 +,IIRC中)将为您提供当前脚本所在目录的名称。如果文件将始终位于wordpress文件夹的直接子目录中,然后__DIR__
(或dirname(dirname(__FILE__))
)应该为您提供wordpress目录的位置。无需配置。