これは完全な答えではなく、単なるデザインの方向性です。最善のアプローチは次のようなものだと思います。
管理者の編集投稿
保存された投稿からすべてのショートコードをリッピングし、エディターとは別にメタボックス内にレンダリングします。小さなエディターでショートコードが発生するのと同じ順序で表示されることを確認してください。
tinyMCE javascript APIで
jQuery関数を作成します。ユーザーがショートコードをクリックすると、HTMLがメタボックスからエディターにスワップされます。およびその逆。順序自体は関連付けとしては問題ありませんが、ショートコードの囲い込みについてはわかりません。しかし、素敵なID接続を設計する方法はたくさんあります。ショートコードの更新は、ajaxを使用してオンザフライで実行できます。
レンダリングされたショートコード状態を保存しない
エディタを切り替える前に、下書き、自動ドラフト、公開を保存し、API呼び出しを行って復元をトリガーします。そのため、レンダリングされたショートコード状態は保存されません。
これは実行できますが、エディターのコンテンツにアクセスする場所とタイミングを理解し、「保存」などの前にjavascriptアクションにフックするには、tinyMCE APIに精通する必要があります。
同じ編集後のページロードに複数のtinyMCEエディターが存在する場合があります。
ショートコードの動作を調べることで、復元部分を調査できます[gallery]
。しかし、クリック[MY_SHORTCODE]
はいくつかのjQueryトリックによって行われる必要があります。
admin_footerスクリプトで、カーソルがアクティブな場所のコンテンツにアクセスするには:
var $editor_content = $(tinymce.activeEditor.getBody());
開始方法のヒントです。