Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We've moved the forum!

Please use forum.silverstripe.org for any new questions (announcement).
The forum archive will stick around, but will be read only.

You can also use our Slack channel or StackOverflow to ask for help.
Check out our community overview for more options to contribute.

Customising the CMS /

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo, swaiba

Customise TinyMCE for one module


Go to End


4 Posts   1468 Views

Avatar
NickA

Community Member, 1 Post

27 October 2010 at 10:33am

I would like to enable a custom TinyMCE plugin / button that is restricted to one module. The documentation , http://doc.silverstripe.org/htmleditorconfig, indicates that this is possible by adding the following to your config

HtmlEditorConfig::get('cms')->enablePlugins('../../tinymce_ssmacron'); // enables plugin
HtmlEditorConfig::get('cms')->insertButtonsAfter('charmap', 'ssmacron');

or by adding to getCMSFields() in your page.

I have tried adding to the module page's getCMSFields() and the module's config with no success. However, it does work if added to the mysite config but, of course, the button then appears on all CMS pages.

Has anyone else done this and, if so, would you be able to let me know what the pitfalls maybe.

Comments on the documentation indicate that it may only work on /mysite/_config.php for some functions.

Avatar
Emelkay

Community Member, 2 Posts

8 December 2011 at 1:04pm

Hey NickA,

I'm not completely sure of your use case here but would a conditional statement in the mysite/_config.php file do the trick in this instance?

For example:

// Have to use $_GET['url'] because the Director or SiteTree instance doesn't know where we are yet
// All that we have is a url param that's been set by SilverStripe
if(preg_match('/\/mypageurl/', $_GET['url']))
{
HtmlEditorField::get('cms')->doWhatever();
}

I'm very new here so apologies in advance if the answer is useless/incorrect :D

Although, doesn't SS offer the ability to add a _config.php file to each module... Did adding it in there still not work?

Avatar
Willr

Forum Moderator, 5523 Posts

13 December 2011 at 8:03pm

I did a custom tinymce for the jobboard module.

https://github.com/fullscreeninteractive/silverstripe-jobboard/blob/master/code/Job.php#L94

Hope that helps!

Avatar
Emelkay

Community Member, 2 Posts

13 December 2011 at 8:59pm

Ahh nice solution Willr, cheers!