WordPress XMLRPC问题

问题描述 投票:3回答:1

我正在尝试使用WordPress XML-RPC。我发现默认情况下会在我的WordPress版本(3.9.1)中启用XMLRPC。但是,当我尝试运行以下PHP代码时,显示以下错误:

Fatal error: Call to undefined function xmlrpc_encode_request() in /Applications/XAMPP/xamppfiles/htdocs/easyblog/test/hellotest.php on line 6

这是我的PHP代码。

<?PHP
//XML RPC Test
define('RPC_URL', 'http://localhost/wordpress/xmlrpc.php');
function sendRequest($methodName, $parameters)
{
    $request = xmlrpc_encode_request($methodName, $parameters);
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
    curl_setopt($ch, CURLOPT_URL, RPC_URL);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT, 1);
    $results = curl_exec($ch);
    $results = xml_decode($results);
    curl_close($ch);
    return $results;
}

$parameters = array();
$response = sendRequest('demo.sayHello', $parameters);?>

服务器细节:

我在Mac OS X上使用XAMPP服务器和PHP 5.5.11。

当我用Google搜索此错误时,我发现我们需要在XAMPP php配置文件中启用XML-RPC。因此,在XAMPP php.ini文件中,我已取消注释extension=php_xmlrpc.dll并重新启动服务器并进行检查。但我又得到了同样的错误。

php wordpress macos xampp xml-rpc
1个回答
0
投票

这可能是因为您尚未在服务器上安装xmlrpc。您可以按照以下步骤检查库:

1)使用此内容创建一个新的php文档。例如,info.php。

<?php
phpinfo();
?>

2)打开浏览器并加载上一个创建的页面:http://YOUR-DOMAIN/info.php

3)搜索“xmlrpc”部分。

screenchot of info.php

4)关于这一点可能发生两件事:

4.1)如果您安装了xmlrpc库,可能是您的wordpress安装或检查点5出错

4.2)如果您尚未在服务器上安装xmlrpc库,则必须安装。在ubuntu上,您可以在终端上安装xmlrpc库写sudo apt-get install curl libcurl3 libcurl3-dev php5-xmlrpc php5-curl

5)最后,检查你的文件php.ini是否启用了扩展名。找到以下行;extension=php_xmlrpc.so并删除de“;”。此时要小心:Windows服务器具有.dll扩展名,UNIX服务器(Mac OS X或Linux)具有.so扩展名。

© www.soinside.com 2019 - 2024. All rights reserved.