我创建了一个自定义模板文件,没有页眉/页脚。
<?php
/*
Template name: API
*/
?>
<?php
echo $_POST['name'];
?>
我使用CURL远程连接以发布名称字段。
$ch = curl_init('mywebsite.com/test-page/');
curl_setopt($ch,CURLOPT_HTTPHEADER,$headers);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,"name=Jason");
curl_setopt($ch,CURLOPT_HEADER,true);
$result = curl_exec($ch);
curl_close($ch);
回复标题:
HTTP/1.1 302 Found Date: Tue, 30 Sep 2014 12:50:29 GMT Server: Apache/2.2.26 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.6 PHP/5.5.10 mod_ssl/2.2.26 OpenSSL/0.9.8za DAV/2 mod_perl/2.0.8 Perl/v5.18.2 X-Powered-By: PHP/5.5.10 Expires: Wed, 11 Jan 1984 05:00:00 GMT Cache-Control: no-cache, must-revalidate, max-age=0 Pragma: no-cache Location: http://<mysite>/wp-login.php Content-Length: 0 Content-Type: text/html; charset=UTF-8
问题是Wordpress将此Curl请求重定向到Wordpress登录页面。这很奇怪,因为此页面无需登录。怎么解决这个问题?
答案 0 :(得分:0)
通过更改:
解决了这个问题curl_setopt($ch,CURLOPT_POSTFIELDS,"name=Jason");
要
curl_setopt($ch,CURLOPT_POSTFIELDS,"othervar=Jason");
使用'name'作为$ _POST变量会导致302重定向。