我正在使用 Wordpress 的 XMLRPC API 和 WP API 的 IXR_Library php 类。如果我在帖子的正文/内容中使用纯文本或仅简单文本,wp.newPost 工作正常,但是当我发布自动创建的完整 html/短代码内容时,它总是给我这个错误
Array ( [faultCode] => -32700 [faultString] => parse error. not well formed )
我要发布的内容是我通常在 WP 中使用短代码的帖子内容,但我想使用 API 通过 php 发布它,因为我正在尝试自动化我的博客。
您可以查看我尝试在下面发布的正文/内容
http://pastebin.com/U94XVZGT
这就是以 XML 调试模式显示的内容(可能似乎已经 html 编码)
下面是通过调试返回的完整 XML 调用和响应,已从中删除用户/密码
http://pastebin.com/26Nyx97K
我真的很感激任何可能的帮助,我已经尝试过 php 的 htmlentities 和 htmlspecialchar 函数来编码我的身体,甚至尝试用 str_replace 替换 [] 括号,因为它们可能会导致它
同样,这当然是由于内容代码,因为我尝试了一个 Hello World 纯内容并且它有效 ----------------------------- -------------------------------
一个更新,刚才我是使用 $_POST 从 textarea 获取 html 内容我尝试在同一个变量中使用相同的内容,但在内容主体周围使用了 ' ' 单引号,现在发布作品,但出现错误
Warning: strpos(): Empty delimiter in wp-includes/class-wp-xmlrpc-server.php on line 4338
所以如果我使用 $body=$_POST['body']; 它不起作用并给出主要错误,但直接使用 $body=' htmlcontent inside '; 有效,但给出了上述 strpos 错误