我已经构建了一个插件,可以在WordPress网站上显示我们的客户反馈。我们使用一个称为“客户温度计”的外部反馈系统。他们有一个简单的API,可以使用URL来请求统计数据和注释等。这个示例显示了总统计数据,但我有一个更大的注释块函数,它在滑块中显示最近的注释。
返回总响应的示例URL:https://app.customerthermometer.com/api.php?apiKey=[apiKey-here]&getMethod=getNumResponsesValue
我可以使用下面的代码很好地得到响应,但是我实现的cURL请求和代码总是位于页面的顶部,无论我在哪里添加短代码。
我的类“picts\\u ct\\u api\\u connection”中的Call方法:
public function call($call) {
$url = $this->get_url();
$apikey = $this->get_api_key();
$method = $this->build_apicall($call);
$request_url = $url.$apikey.$method;
$curl = curl_init($request_url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_POST, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_HEADER, false);
$response = curl_exec($curl);
curl_close($curl);
return $response;
}
显示响应的快捷码函数
function picts_ct_responses( $atts = [], $content=null, $tag=\'\' ) {
$method = array(
\'getMethod\' => \'getNumResponsesValue\'
);
$api_call = new picts_ct_api_connection();
$response = $api_call->call($method);
echo $response;
}
add_shortcode( \'total_responses\', \'picts_ct_responses\' );
我在我的页面上的一些虚拟文本中间添加了我的短代码(如下所示):
但我的页面上显示:
保存页面时,我还收到一个JSON响应错误,因此我觉得这与cURL响应提前打印到页面有关,而不是添加到变量中并在正确的位置使用有关。
我在网上搜索了一下,没有找到任何关于这方面的帮助。任何帮助都将不胜感激。
约翰