我正在尝试对需要在Wordpress页面/小部件中呈现数据的网站进行简单的api调用。
我创建了一个新页面,并将此代码放在我的信息中心的编辑框中:
<?php
$response = wp_remote_get( 'https://jsonplaceholder.typicode.com/posts/2' );
if( is_array($response) ) {
$header = $response['headers'];
$body = $response['body'];
}
print($response);
print($header);
print($body);
?>
我的Wordpress UI上没有任何内容呈现。
是的,我在我的本地环境中(使用MAMP)。
答案 0 :(得分:1)
解决方案:
在插件目录中创建一个文件夹,并创建一个包含api调用的.php文件。
您的结构将如下所示:
class Api extends WP_Widget {
function __construct() {
$options = array(
'description' => '',
'name' => ''
);
parent::__construct('Api', 'Widget', $options);
}
public function form($instance) {
extract($instance);
// Put your HTML widget form here
}
public function widget($args, $instance) {
extract($args);
extract($instance);
$data = $this->get_api_call($args);
}
public function get_api_call($args) {
$api = wp_remote_get("http://www.example.com/json/");
$json_api = json_decode(stripslashes($api['body']));
return $json_api;
}
}
这是一个基本的大纲实例,您必须根据您在此处的确切需要自定义所有内容。