web-dev-qa-db-ja.com

Wp_list_commentsを変数に出力できますか?

wp_list_comments()を変数に出力する方法はありますか?

$output = wp_list_comments(array('reverse_top_level' => false ), $comments);のようなもの

私はプラグインを書いています、そしてそれは私自身のものを書く代わりに標準のWordPress機能を使うのが便利でしょう。

1
Radek

デフォルトの使い方では、常に直接出力するデフォルトのコメントウォーカーの性質上、これは不可能です。しかし、この機能はカスタムウォーカーを提供することを可能にします。

カスタムウォーカーの詳細: コーデックスクラスリファレンスサンプルカスタムウォーカークラス

出力バッファリングを使ってそれを変数に保存することもできます(これはダーティーだと考えられます):

ob_start();
wp_list_comments(array('reverse_top_level' => false ), $comments);
$variable = ob_get_clean();
2
s1lv3r

wp_list_comments の関数リファレンスに従って、リストを返すためにarg Echoをfalseに設定することができます。

これがfalseに設定されている場合、デフォルトのwalkerはコードをエコーし​​ません。

wp_list_comments(array('reverse_top_level' => false, 'echo' => false), $comments);
0
Jacob Raccuia