View Full Version : Remove Buttons from Editor with Plugin

01 Dec 2008, 00:50
I recently ran into a problem with a style I was creating where the editor in the userCP was just too wide for the style because of the userCP sidebar. I tried editing the CSS for the editor but there is a point where the editor will not get any smaller because of the buttons, and that was still too wide for the style I was working with. After a little searching through code I figured out how to remove some of the buttons to allow the editor to be smaller, its pretty simple.

First off, this will be done in a plug-in and the hook location will be 'editor_toolbar_start'. From this hook location you have access to a variable $forumid, if your making a post in a forum this variable will hold the forum ID, but if your using another section of the site such as creating a PM or editing your signature this variable will hold the values telling you that as well.

Possible values for $forumid:
Or it will be the forumID of the forum in which a post is being edited/created

Just like most areas of VB there is an array named 'show' that holds a list of true/false values of which things need to be shown. Such as which buttons to show in the editor.

Possible $show items:
$show['img_bbcode'] = image embed button
$show['font_bbcode'] = fonts drop down
$show['size_bbcode'] = font sizes drop down
$show['color_bbcode'] = font color drop down
$show['align_bbcode'] = align buttons
$show['list_bbcode'] =list buttons
$show['code_bbcode']= code button
$show['html_bbcode'] = html button
$show['php_bbcode'] = php button
$show['basic_bbcode'] = Bold/Italic/Underline all in one
$show['url_bbcode'] = embed link button
$show['quote_bbcode'] = quote button
$show['smiliebox'] = show the smilie box

Setting any of those values to false in a plugin with the hook location of 'editor_toolbar_start' will tell VB not to show the items in the editors toolbar.

Here is the plug-in I created to remove buttons on the PM/Edit Signature pages of my style to give you an example of how its done...

case 'privatemessage':
case 'signature':
$show['font_bbcode'] = false;
$show['basic_bbcode'] = false;

And thats pretty much it, its really simple.

23 Jun 2009, 10:48
Thanks helped me a lot, if I want to hide a button in all editors that I have just put:
$ show [ 'size_bbcode'] = false;:up:

James Birkett
18 Oct 2009, 14:46
Thanks helped me a lot, if I want to hide a button in all editors that I have just put:
$ show [ 'size_bbcode'] = false;:up:

I wouldn't recommend putting spaces in between ;)

$show['size_bbcode'] = false;