web-dev-qa-db-ja.com

tinyMCE.activeEditor = null WP エディタは「テキスト」モードで読み込まれますか?

私はAJAXを介してデータを保存するプラグインを持っていて、それがリクエストを送信していないことに気付きました。私はさらに見てコンソールを開いて、低く見てオブジェクトtinyMCE.activeEditorを見ようとしたとき、それは値がnullです。

エディタが「テキスト」モードでロードされている場合にのみ該当します。「ビジュアル」に切り替えるかロードすると、tinyMCE.activeEditorオブジェクトが存在するはずです。

私はこれがあるべきでないときに 'Text'モードの状態をキャッシュすることと関係があると考えています、そして各ページロードは本当に 'Visual'モードを提供するべきですか?

誰かが以前にこの問題に遭遇し、コアを編集せずに修正を知っているなら、それは大いに感謝されるでしょう。それらがどれほど関連しているのか私にはわからないので、私は少しのスニペットも投稿していません - しかし、これを解決するのを助けるかもしれないあなたが私に共有したい何かがあればそれは大いに感謝されるでしょう。

2
VitaCoco

このワンライナーを使用してください:

if(!tinyMCE.activeEditor)jQuery( '.wp-editor-wrap .switch-tmce')。trigger( 'click');

//これで、 "tinyMCE.activeEditor"を安全に使用できますconsole.log(tinyMCE.activeEditor.settings);

1
gradosevic

そのための簡単な解決策があります。

あなたはエディタがアクティブであるかどうかをチェックし、エディタの値を設定するか、そうでなければtext-areaの値を設定する必要があります。以下のコードを参照してください。

 
 if(tinyMCE.activeEditor == null)
 {
 
 jQuery( "#txtArea")。html( 'your html') ; 
} 
 else {
 
 tinyMCE.get( 'txtArea')。setContent( 'Your html'); 
} 
 
0
nikunj gandhi