【WordPress】プラグイン「TinyMCE Advanced」でtableにサイズが自動で指定されてしまうのを防ぐ
以前このブログでテーブルの列や行挿入時、境界線を触ると
width、heightが指定されるのを防止するのを紹介しましたが
【WordPress】テーブルにwidthとheightが自動的に追加されるのを防ぐ
プラグイン「TinyMCE Advanced」を使用している場合
どうやら
プラグインのバージョンが5.2以上では
テーブル挿入時にwidthが自動で指定(%指定)
されてしまうようです。
いちいち記述を削除するのが面倒です
(割とテーブルを使用するとセルの幅を細かく調整することがあったりするので)。。。
そこで、
サイズの自動指定を無効にする方法がありました。
対応方法
functions.phpに下記のコードを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
function customize_tinymce_settings($mceInit) { $invalid_style = array( 'table' => 'width height', 'th' => 'width height', 'td' => 'width height' ); $mceInit['invalid_styles'] = json_encode($invalid_style); $mceInit['table_resize_bars'] = false; $mceInit['object_resizing'] = "img"; return $mceInit; } add_filter( 'tiny_mce_before_init', 'customize_tinymce_settings' ,0); |
※既にfunctions.phpでTinyMCE関連の記述している際は、
上記をコピーして貼り付けするだけではエラーを起こしますので
関数をまとめて記載するようにしましょう。
※追記:このままの記述ですとセルのプロパティでの幅指定も効かなくなります。
幅指定を効かせるための方法は下記URLの記事に書きました。
これでテーブル挿入時にwidthが自動指定されませんし
カーソルを罫線の上に乗せても幅と高さの調整が防止されているため
width、heightが指定されることもありません。
▼参考にさせていただきました。ありがとうございました。
この記事の投稿者
taka
Webサイト作ってます。
最近のモットー「決して無理をしないスタイル」
twitter: @taka_sbs