The mce_buttons_3 WordPress PHP filter allows you to modify the third-row list of TinyMCE buttons displayed in the visual tab of the WordPress editor.
Usage
add_filter('mce_buttons_3', 'your_custom_function', 10, 2); function your_custom_function($mce_buttons_3, $editor_id) { // your custom code here return $mce_buttons_3; }
Parameters
$mce_buttons_3
(array) – Third-row list of buttons.$editor_id
(string) – Unique editor identifier, e.g. ‘content’. Accepts ‘classic-block’ when called from the block editor’s Classic block.
More information
See WordPress Developer Resources: mce_buttons_3
Examples
Add a custom button to the third row
This example adds a custom button with the ID my_button
to the third row of TinyMCE buttons.
add_filter('mce_buttons_3', 'add_my_custom_button', 10, 2); function add_my_custom_button($mce_buttons_3, $editor_id) { $mce_buttons_3[] = 'my_button'; return $mce_buttons_3; }
Remove the ‘Underline’ button from the third row
This example removes the ‘Underline’ button from the third row of TinyMCE buttons.
add_filter('mce_buttons_3', 'remove_underline_button', 10, 2); function remove_underline_button($mce_buttons_3, $editor_id) { $key = array_search('underline', $mce_buttons_3); if (false !== $key) { unset($mce_buttons_3[$key]); } return $mce_buttons_3; }
Rearrange buttons in the third row
This example rearranges the buttons in the third row of TinyMCE buttons.
add_filter('mce_buttons_3', 'rearrange_buttons', 10, 2); function rearrange_buttons($mce_buttons_3, $editor_id) { // Rearrange the buttons as desired $new_mce_buttons_3 = array('button1', 'button2', 'button3'); return $new_mce_buttons_3; }
Add a separator between buttons in the third row
This example adds a separator between two buttons in the third row of TinyMCE buttons.
add_filter('mce_buttons_3', 'add_separator_between_buttons', 10, 2); function add_separator_between_buttons($mce_buttons_3, $editor_id) { array_splice($mce_buttons_3, 2, 0, '|'); // Insert a separator after the second button return $mce_buttons_3; }
Clear all buttons from the third row
This example removes all buttons from the third row of TinyMCE buttons.
add_filter('mce_buttons_3', 'clear_all_buttons', 10, 2); function clear_all_buttons($mce_buttons_3, $editor_id) { return array(); }