执行重定向后,我的functions.php文件中的所有函数都不起作用。
更具体地说,我所做的是使用第一个php文件进行初始API调用,将数组写入txt文件,然后重定向到另一个php文件,该文件以读取txt文件开始然后制作另一个基于第一个数组的API调用。然后解析该数据,并以特定格式将其放入wp数据库。
我知道问题在于重新定位,因为我已经测试了多个场景,如下所示,它们都指向重定向是罪魁祸首。
例如,在我的第一个php文件中,我有以下内容。
if (function_exists('is_wp_version')){
echo "is_wp_version exists!! <br>";
} else {
echo "is_wp_version, it does not exist <br>";
}
if (function_exists('fopen')){
echo "fopen exists!! <br>";
} else {
echo "fopen, it does not exist <br>";
}
... More code...
... More code...
wp_redirect( 'PHPfile2.php', 301 ); exit; // I have also tried the header
//function with same results
?>
如果我注释掉重定向线,我将始终看到打印下面的输出。
is_wp_version exists!!
fopen exists!!
然而,在PHPfile2.php中,我总是看到以下内容并得到一些错误和以下输出。
is_wp_version, it does not exist
fopen exists!!
Fatal error: Call to undefined function get_header() in PHPfile2.php on line 22
它给了我某种致命的错误。如果我使用get_header函数删除或注释掉代码,那么我会在下一个wordpress函数上遇到致命错误。
有人能指出我正确的方向吗?我是以错误的方式来做这件事的吗?我只需要能够进行2次API调用,第二次调用依赖于我从第一次调用中获得的内容。
谢谢!
答案 0 :(得分:0)
这是因为您要离开wordpress框架并使用自己的自定义文件(这是非常不可取的)。
您需要require_once('wp-blog-header.php');
。在PHPfile2.php
。