web-dev-qa-db-ja.com

ショートコードでwp_editorを使う

フロントエンドでの提出用のプラグインを作成しています。コンテンツ送信用のフォームを表示するためにショートコードAPIを使用していますが、問題があります。問題は、wp_editor echoeのデータであり、shortcodeはデータを返すはずです。このようにwp_editorを統合すると、

$final_form .= wp_editor();

フォームはレンダリングされますが、その場所ではなく、ショットコードが含まれる投稿コンテンツの上に表示されます。ショートコードAPIでwp_editorをどのように使用するのでしょうか。私は手動でTinyMCEなどを呼び出すことに迷惑を掛けたくありません。

ありがとうございました。

6
OriginalEXE

関数echosデータの場合は、 php出力バッファリング を使用してechoed出力を取得し、代わりにそれを返すことができます。

// Turn on the output buffer
ob_start();

// Echo the editor to the buffer
wp_editor();

// Store the contents of the buffer in a variable
$editor_contents = ob_get_clean();

// Return the content you want to the calling function
return $editor_contents;
15
Milo