在自定义.php文件中包含wp-load.php会导致页面处理停止.为什么



我有一个WP网站运行版本4.8.2。我在主题的根文件夹中创建了一个自定义PHP页面,其中包含WordPress功能,其中包含以下代码:

<?php
echo 'ralph';
clearstatcache();
echo file_exists('../../../wp-load.php');
require_once('../../../wp-load.php');
echo 'joe';
?>

最终结果应显示在页面上的字符串' ralph1joe '(1代表wp-load.php实际上存在)。

问题是:当我启动自定义页面时,仅将字符串' ralph1 '可视化。 require_once 行之后的任何指令都被忽略。我在页面和日志文件中都看不到任何错误。页面的过程被简单地中断。

require_once 行可以做些什么?

我认为问题是 wp_load.php ,或者也许您还没有正确读取wp_load.php文件。

wp_load始终需要 wp_config.php 如果没有得到它,它将死于错误。请参阅wp_load.php文件中的下面代码

$die  = __( "There doesn't seem to be a <code>wp-config.php</code> file. I need this before we can get started." ) . '</p>';

使用类似此类代码和与之关联的错误。

因此,当您 require_once'wp_load.php'时,它不会得到 wp_config.php 它将死亡并停止执行,并且您将不会进一步打印语句

希望它能澄清您。

我解决了问题。我安装的插件显然引起了冲突。该插件被称为所有404重定向到主页停用它导致我的自定义页面再次正常工作。

在我的代码中,此错误是由功能中所需的行引起的。我删除并将这条线放在主代码上。

最新更新