ビジュアルエディターで独自スタイルを付与する機能を付ける

/* ---------------------------------------------------------------------------- */
//エディターカスタマイズ
/* ---------------------------------------------------------------------------- */

// エディター用のcss追加
add_editor_style(get_template_directory_uri() . '/assets/styles/editor-style.css');

// スタイル選択用プルダウンメニューを追加する
function tinymce_add_buttons_2( $array ) {
  // add buttons
  array_unshift( $array, 'styleselect' );
  return $array;
}
add_filter( 'mce_buttons_2', 'tinymce_add_buttons_2' );

// 不要なビジュアルエディターボタンを削除
function tinymce_delete_buttons( $array ) {
  $array = array_diff($array, array('alignleft','aligncenter','alignright','wp_more'));
  return $array;
}
add_filter( 'mce_buttons', 'tinymce_delete_buttons' );
function tinymce_delete_buttons_2( $array ) {
  $array = array_diff($array, array('alignjustify', 'forecolor', 'pastetext', 'outdent', 'indent', 'wp_help'));
  return $array;
}
add_filter( 'mce_buttons_2', 'tinymce_delete_buttons_2' );

// エディターのカスタマイズ
function my_editor_custom_formats($init_array) {
  // 「スタイル」セレクトボックス編集
  $style_formats = array(
      array(
          'title'   => 'テキスト(青)',
          'block'   => 'span',
          'classes' => 'fontBlue',
          'wrapper' => true
      ),
      array(
          'title'   => 'テキスト(赤)',
          'block'   => 'span',
          'classes' => 'fontRed',
          'wrapper' => true
      ),
      array(
          'title'   => 'テキスト(太字)',
          'block'   => 'span',
          'classes' => 'fontBold',
          'wrapper' => true
      ),
      array(
          'title'   => 'テキスト(大きく)',
          'block'   => 'span',
          'classes' => 'fontLarge',
          'wrapper' => true
      ),
      array(
          'title'   => 'テキスト(小さく)',
          'block'   => 'span',
          'classes' => 'fontSmall',
          'wrapper' => true
      ),
  );
  $init_array['style_formats'] = json_encode( $style_formats );
  $array['fontsize_formats'] = '50% 75% 100% 150% 200%';
  return $init_array;
}
add_filter( 'tiny_mce_before_init', 'my_editor_custom_formats' );