WordPress TinyMCEのテーブルのwidth等を削除

WordPress TinyMCE Advancedのテーブル作成時に自動でセットされるcssのwidth等を削除するサンプルです。(確認環境:WordPress 5.7)

目次

サンプル 目的
自動でセットさせないコード

目的

投稿入力画面でテーブルのアイコンからテーブルを作成するとデフォルトでwidth:50%等がセットされます。

<table style="border-collapse: collapse; width: 100%;">
<tbody>
<tr>
<td style="width: 50%;"></td>
<td style="width: 50%;"></td>
</tr>
<tr>
<td style="width: 50%;"></td>
<td style="width: 50%;"></td>
</tr>
</tbody>
</table>

これを以下のようにセットされないようにします。

<table>
<tbody>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</tbody>
</table>

 

自動でセットさせないコード

functions.phpに以下を貼り付けます。

/*---------------------------------------------------------
 * TinyMCE Advanced width等の初期設定を消す
 *---------------------------------------------------------*/
function tinymce_custom($settings) {
    $invalid_style = array(
        'table' => 'width height',
        'th' => 'width height',
        'td' => 'width height'
    );
    $settings['table_default_styles'] = json_encode($invalid_style);
    return $settings;
}
add_filter('tiny_mce_before_init', 'tinymce_custom', 0);

関連の記事

WordPressをインストールする(Windows10 + XAMPP)

△上に戻る