TinyMCEにアンカーとかテーブルを追加する
WordPressに使用されているWYSIWYGエディタ「Tiny MCE」はデフォルトの状態だと、結構不足がある。
アンカーとか、テーブルはその代表格。
普通だと「TinyMCE Advanced」だとかのプラグインなんかを使って拡張するわけだけど、何が何でもプラグインは使いたくないでござる!という場合もあるはず。
そんなときは、mce_buttons(無印~_4まで)のフックを使ってやってあげればいい。
・・・んだけど、スタイルとかのツールと違って、普通にやっても追加できない。
どうもデフォルト状態ではアンカーとテーブルのライブラリがパッケージされていないようで、WordPressで使用するにはそれらを追加する必要があるみたい。
その際はTinyMCE公式のCDNを使用して、以下のような感じでTinyMCEのフックを設定する。
アンカーとテーブルを実装するコード
function addition_tinymce_tools_1($tools){ array_push($tools, 'anchor'); // anchor ※mce_external_pluginsフックの配列の添字と名前を合致させる return $tools; } add_filter('mce_buttons', 'addition_tinymce_tools_1'); function addition_tinymce_tools_2($tools){ array_push($tools, 'table'); // table ※mce_external_pluginsフックの配列の添字と名前を合致させる return $tools; } add_filter('mce_buttons_2', 'addition_tinymce_tools_2'); function addition_tinymce_tools_plugins($plugins) { $plugins['anchor'] = '//cdn.tinymce.com/4/plugins/anchor/plugin.min.js'; // anchorのライブラリ $plugins['table'] = '//cdn.tinymce.com/4/plugins/table/plugin.min.js'; // tableのライブラリ return $plugins; } add_filter('mce_external_plugins', 'addition_tinymce_tools_plugins');
※上は単純にツール末尾に追加しているので任意の場所に突っ込むなら配列を操作する!
ライブラリのスクリプトは「//cdn.tinymce.com/【TinyMCEのバージョン番号】/plugins/【ほにゃらら】/plugin.min.js」とでもしてアクセスできれば多分使えるはず。