Wijzig de TinyMCE WYSYWIG editor knoppen

Silverstripe wordt geìnstalleerd met De TinyMCE HTML editor, waarmee pagina´s eenvoudig kunnen worden opgemaakt. De standaard selectie knoppen en functies kunnen eenvoudig worden aangepast.

Zo kun je knoppen toevoegen voor extra functionaliteit, of juist weglaten om de editor voor gebruikers te vereenvoudigen. Lees hier hoe je dit kunt doen, zonder de bronbestanden te wijzigen.

TinyMCE heeft een uitgebreide set functies. Bekijk hier alle mogelijkheden van de editor.

Knoppen toevoegen

Stel dat je de tekstkleur knop wilt toevoegen aan de editor. Om dit te bewerkstellingen, voeg de onderstaande regel toe aan je mysite/_config.php :

HtmlEditorConfig::get('cms')->insertButtonsAfter('formatselect', 'forecolor');

Deze regel zal de tekstkleur knop toevoegen na de opmaak knop.
Onderstaand alle functies om knoppen toe te voegen.

insertButtonsAfter('KnopA', 'KnopB', 'KnopC', 'KnopD')
Dit voegt de knoppen B, C en D toe na knop A.

insertButtonsBefore('KnopA', 'KnopB', 'KnopC', 'KnopD')
Dit voegt de knoppen 2, 3 en 4 toe voor knop A.

addButtonsToLine(1, 'KnopA', 'KnopB')
Dit voegt de knoppen A and B toe aan het einde van regel 1.

setButtonsForLine( 1, 'KnopA', 'KnopB', 'KnopC')
Dit laat alleen de knoppen A, B en C zien op regel 1.

Knoppen verwijderen

Knoppen verwijderen gaat net zo eenvoudig met bijvoorbeeld de volgende regel:

HtmlEditorConfig::get('cms')->removeButtons('tablecontrols');

Deze regel verwijderd alle tabel knoppen van de editor

removeButtons('KnopA', 'KnopB')
Dit verwijdert de knoppen A en B.

Reacties

  • Ik heb tot nog toe het meeste succes gehad met het toevoegen van de configuratie regels in de mysite/_config.php (maar dat kan iets zijn dat puur met SilverStripe 2.3 van doen heeft, 2.4 heb ikop dat gebied nog niet getest). Wat bij mij gebeurde is dat de nieuwe knoppen wel zichtbaar waren maar na een aantal handelingen vervangen werden door de oorspronkelijke button configuratie. Dat is wel jammer omdat je dan niet zo makkelijk per pagina klasse de html-editor aanpassen kan.

    Bij het gebruik van setButonsForLine(): Om links en images toe te voegen via de interface van Silverstripe moet je ssimage en sslink toevoegen. 

    HtmlEditorConfig::get('cms')->setOption('invalid_elements', 'div,span,@style'); verwijdert gekopieerde stijlen uit andere programma's, voor zover die als style, span of div toegevoegd worden (geen strong of em etc.)

    Echter: wees voorzichtig met setOption(valid_elements', 'elements') omdat dat voor problemen kan zorgen (bijvoorbeeld bij het invoegen van links, maar ik voermoed dat ik vergeten ben aan te geven dat ook het href element ingevoegd mag worden).

    yurigoul | 02/04/2010 2:41pm (4 jaren geleden)

Plaats reactie

* Gebruik preformatted om code in syntax highlighting weer te geven. (Koppen worden uit de reacties verwijderd)

RSS feed van de reacties op deze pagina | RSS-feed voor alle reacties