我正在努力学习wordpress和php开发。我一直在尝试创建自己的短代码,以添加一个json拉取,我可以将其解析到预定的帖子中。我的基础php正在运行——我一直在phpfiddle中进行实验。org,但一旦我添加任何特定于wordpress的内容,事情就停止了。我将此作为一个新问题发布,因为最新的WP更新似乎引发了很多问题。
我正在将此代码添加到函数中。php:
add_shortcode(\'aggrenda\', \'aggrenda_func\');
function requestAggrendaEvents() {
$json = file_get_contents("http://aggrenda.com/mpellas/michael-pellas/events.json");
$data = json_decode($json, true);
return $data[\'events\'];
}
function getPostInfo($aggrendaEvent) {
return array(
"title" => $aggrendaEvent[\'title\'],
"description" => $aggrendaEvent[\'description\'],
);
}
// Get the aggrenda events as an associative array
$aggrendaEvents = requestAggrendaEvents();
// Get the WordPress post information for the "next" event in Aggrenda
$postInfo = getPostInfo($aggrendaEvents[0]);
// TODO: Create a post using $postInfo
echo $postInfo[\'title\'], \'<br>\';
echo $postInfo[\'description\'], \'<br>\';
// See what exactly is in $postInfo right now
var_dump($postInfo);
我肯定我错过了一些小东西。有人能帮忙吗?
最合适的回答,由SO网友:shanebp 整理而成
尝试删除括号并添加完整url:
$url = \'http://theurl.com\';
为清晰起见,最好为标记和函数名使用不同的名称:
add_shortcode(\'aggrenda\', \'aggrenda_func\');
function aggrenda_func() {
$url = \'http://theurl.com\';
$response = wp_remote_get( $url );
echo($response);
}