繁体   English   中英

PHP include()用于WordPress插件-错误/警告消息

[英]PHP include() for WordPress plugin- Error/Warning Message

这是我关于堆栈溢出的第一篇文章,因此,如果我违反礼节或其他愚蠢的行为,我深表歉意。 我也是一个新手程序员,所以如果这个问题看起来很愚蠢,我会提前道歉。

现在要讲的重点是:我正在尝试在我们的主要程序员度假时为网站创建WordPress插件。 我已经取得了一些成功,现在我需要做的是在用户对网页执行某些操作之后,从插件中调用simplemodal-login。 当前,我正在尝试这样做,以包括文件,这些文件位于文件插件中上一级的单独目录中(我将屏蔽文件名以保持匿名性):

include ("../simplemodal-login/simplemodal-login.php");

我也试着前缀来simplemodal登录目录部分/../../..//../../ 我也尝试过

include ("{$_SERVER['DOCUMENT_ROOT']}/[project name]/wp-content/plugins/simplemodal-login");

及其一些变化。 没事。 我不断收到此错误消息的变化形式:

Warning: include(../simplemodal-login/simplemodal-login.php) [function.include]: failed to open stream: No such file or directory in /home/[user name]/public_html/[website name]/[project name]/wp-content/plugins/[my plugin]/[plugin file] on line 29
Warning: include() [function.include]: Failed opening '../simplemodal-login/simplemodal-login.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/[user name]/public_html/[website name]/[project name]/wp-content/plugins/[plugin name]/[plugin file].php on line 29

我究竟做错了什么? 我只是想在用户看到网页一定次数后运行simplemodal-login插件。 如何正确包含文件? 对于我的经验不足,我深表歉意。我在大学里参加了Java入门课程(我在这方面做得很好),今年夏天,作为实习生,我学到了一些PHP(我的意思是LITTLE)。 如果有人可以指导我,使我在尝试包含文件时没有收到该错误消息,那将非常有帮助。

谢谢!

如果您要包含的文件比编写代码的插件文件高一个目录,那么可移植的解决方案是使用:

include dirname(__FILE__) . '/../file.php';

dirname(__FILE__)返回在其中执行该语句的文件的路径(无论它是否已包含在内)。 我在Wordpress插件中使用了它,没有任何问题。

希望能有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM