今天的问候 我想在不使用管理面板的情况下通过wordpress中的API调用发布帖子,我使用了http-auth插件来管理对wordpress的授权,还使用以下代码更改了.htaccess文件:
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule .* - [e=HTTP_AUTHORIZATION:%1]
我的脚本是这样的:
<?php
$process = curl_init('http://somewhereinsouth.com/wp-json/wp/v2/posts');
$data = array('slug' => 'welcome-to-the-jungle' , 'title' => 'Welcome to the Jungle' , 'content' => 'We welcome to you a better journey at the jungle.', 'excerpt' => 'smaller' );
$data_string = json_encode($data);
$headers = array(
'Content-Type: application/json',
'Content-Length: ' . strlen($data_string),
'Authorization' .'Basic'.base64_encode('admin:Best@xy123'));
// create the options starting with basic authentication
// curl_setopt($process, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($process, CURLOPT_TIMEOUT, 30);
curl_setopt($process, CURLOPT_POST, 1);
// make sure we are POSTing
curl_setopt($process, CURLOPT_CUSTOMREQUEST, "POST");
// this is the data to insert to create the post
curl_setopt($process, CURLOPT_POSTFIELDS, $data_string);
// allow us to use the returned data from the request
curl_setopt($process, CURLOPT_RETURNTRANSFER, TRUE);
// we are sending json
curl_setopt($process, CURLOPT_HTTPHEADER, $headers);
// process the request
$return = curl_exec($process);
curl_close($process);
// This buit is to show you on the screen what the data looks like returned and then decoded for PHP use
echo '<h2>Results</h2>';
print_r($return);
echo '<h2>Decoded</h2>';
$result = json_decode($return, true);
print_r($result);
现在,当我使用此脚本在我的网站上发布帖子时,出现了以下错误。错误:
<h2>Results</h2><html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>BestViewsReviews | Restricted Site</title>
<link rel="stylesheet" href="http://somewhereinsouth.com/wp-content/plugins/http-auth/frontend/css/style.min.css" type="text/css">
</head>
<body class="http-restricted">
<p>You are not allowed to perform this action.</p>
</body>
</html><h2>Decoded</h2>
谢谢,谢谢。