Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在自行编写的php代码中访问wordpress函数?_Php_Xml_Wordpress_Xml Rpc_Api Design - Fatal编程技术网

如何在自行编写的php代码中访问wordpress函数?

如何在自行编写的php代码中访问wordpress函数?,php,xml,wordpress,xml-rpc,api-design,Php,Xml,Wordpress,Xml Rpc,Api Design,我正在从事一个项目,用户可以检查和编辑自己的数据,也可以查看他们的发票。 我自己在本地机器上用PHP编写这个项目的代码,但是发票是在其他地方托管的现有和工作的wordpress站点上使用wp发票插件制作的 我希望用户能够登录到我的web应用程序,然后在公共wordpress网站上查看web应用程序从wp invoice api检索到的发票。wp invoice api的文档可以在这里找到:,它使用我不熟悉的XML-RPC XML-RPC使用内置的wordpress函数来使用API。因此,我还下载

我正在从事一个项目,用户可以检查和编辑自己的数据,也可以查看他们的发票。 我自己在本地机器上用PHP编写这个项目的代码,但是发票是在其他地方托管的现有和工作的wordpress站点上使用wp发票插件制作的

我希望用户能够登录到我的web应用程序,然后在公共wordpress网站上查看web应用程序从wp invoice api检索到的发票。wp invoice api的文档可以在这里找到:,它使用我不熟悉的XML-RPC

XML-RPC使用内置的wordpress函数来使用API。因此,我还下载了wordpress并将其安装在我的本地机器上,并且几乎可以正常工作(我相信)。但是当我使用“wp load.php”将wordpress函数加载到我的web应用程序时,它会将我重定向到wordpress安装程序,该安装程序说wordpress已经安装,并且有一个工作的wp-config.php文件。这是正确的,因为我成功安装了wordpress

我的代码: (这是我唯一的代码,没有使用“include_once”包含其他文件、函数或类)

结果:(它将我从自己编写的“dashboard.php”重定向到wordpress页面“wp admin/setup config.php”)

尝试过的解决方案:
我在网上搜索解决方案,有人说这与我的浏览器缓存有关。我尝试了另一种浏览器,在chrome中使用匿名模式,但都得到了相同的结果。
除此之外,我还尝试使用另一个名为“wp blog header.php”的wordpress文件加载使用XML-RPC所需的wordpress函数,但得到了相同的结果

实际上,我认为这很容易修复,但我对XML-RPC和API一无所知,我不知道如何将所有wordpress函数正确地包含在一个非wordpress的自写文件中

谢谢


伊莱亚斯

好吧,我想出来了。我不再使用本地计算机,而是使用Web服务器。加载“wp load.php”时没有错误,也没有被重定向

奇怪的是,几乎相同的代码在公共Web服务器上运行良好,但在本地计算机上运行不好。但它现在起作用了,所以很好

代码:(我使用它并将其上传到WordPress根目录,其中包含其他文件,如wp-config.php等)

query('wp.invoice',数组(
$method='get_invoice',
$credentials=数组('username','password'),
$args=数组(
“ID”=>1032017039
)
));
$theu invoice=$client->getResponse();
foreach(_发票为$key=>$value){
回显“$value”;
}
?>

谢谢您的帮助。

我通常会包括wp标题。php@clearshot66你是说wp-blog-header.php吗?我没有看到wp-header.php文件…是的,对不起!wp博客标题。php@clearshot66奇怪,这对我不起作用。你能分享你的代码吗?字面意思是
include(“/var/www/wordpress/wp blod header.php”)
define("ABSPATH", "C:/wamp64/www/mijnDashboard/WP");
define("WPINC", "/wp-includes");
include_once( ABSPATH . '/wp-load.php' );
include_once( ABSPATH . WPINC . '/class-IXR.php' );
include_once( ABSPATH . WPINC . '/class-wp-http-ixr-client.php' );
                $client = new WP_HTTP_IXR_Client( 'http://MyWordpressSiteWithWP-INVOICEinstalled/xmlrpc.php' );
                $client->query('wp.invoice', array(
                    $method = 'get_invoice',
                    $credentials = array('Username', 'Password'),
                    $args = array(
                        'ID' => 1032017043
                    )
                ));
                $the_invoice = $client->getResponse();
echo "$the_invoice";
echo "hallo";
<?php
define( 'WP_USE_THEMES', false );
require( 'wp-load.php' );
$rootD = $_SERVER['DOCUMENT_ROOT'];
define("ABSPATH", "$rootD/httpdocs");
define("WPINC", "/wp-includes");

include_once( ABSPATH . WPINC . '/class-IXR.php' );
include_once( ABSPATH . WPINC . '/class-wp-http-ixr-client.php' );

$client = new WP_HTTP_IXR_Client( 'http://mywordpresswebsite/xmlrpc.php' );

$client->query('wp.invoice', array(
    $method = 'get_invoice',
    $credentials = array('username', 'password'),
    $args = array(
        'ID' => 1032017039
    )
));

$the_invoice = $client->getResponse();

foreach ($the_invoice as $key => $value) {
  echo "$value";
}

?>