我正在嘗試爲WordPress自動發佈一個API的插件。 我已經把一個類別中的生成HTML代碼:在wordpress中輸出緩衝
class Poster{
public function generateHTML($data){
ob_start();
/*
some html and php code
*/
$html = ob_get_contents();
ob_end_flush();
return $html;
}
}
事件上觸發admin_menu行動:
add_action('admin_menu', function(){
/*
get data from API
*/
$poster = new Poster();
$html = $poster->generateHTML($data);
$post = array(
'post_title' => $title,
'post_content' => $html,
'post_type' => 'post',
'comment_status' => 'open',
'ping_status' => 'open',
'post_status' => 'publish'
);
wp_insert_post($post, $wp_error, true);
});
有什麼錯我的代碼? 它有時會起作用,但大部分時間沒有。
而'它的作品'我的意思是從方法返回的HTML,然後存儲在$ html變量。但大多數情況下,從該方法返回的HTML是唯一正在輸出並且在管理面板中輸出的HTML(管理面板的其餘部分不會僅輸出從該方法生成的內容被輸出)。
那麼,我如何解決這個問題有什麼不對嗎? 有沒有其他方法可以達到同樣的效果?提前致謝!
你是否把html放在標題之前。檢查某些情況下是否有任何字符在某處回顯。看起來像輸出時間問題。 –
你在'標題'之前是什麼意思?如果您在發送標題信息之前提及。那麼我猜它不是。但是,我如何驗證它?我輸出東西的唯一地方是在方法內部,沒有別的東西。 – user225269