Zum Inhalt springen

RTE - Konfiguration in eigener Extension

Erstellt am 27. Juli 2007 · 2 Antworten · letzte Antwort am 27. Juli 2007

Tags: TCA, Frage

chrisnrw ·

Hallo,

ich habe ein Problem mit der Konfiguration des RTE bei einer eigenen Extension.

Ich möchte für ein Textfeld meiner neuen Tabelle die Auswahl der Klassen und der Buttons einschränken.

Im Kickstarter habe ich den RTE Mode "Custom" ausgewählt und konnte so die Buttons ankreuzen, die angezeigt werden sollen. Das funktioniert soweit auch gut.

Dann habe ich unten bei "Hide Paragraph Items" den Punkt "Hide Hx und PRE from Paragraph selector" gewählt.

Unter "Define classes" habe ich dann noch zwei eigene Klassen definiert. Diese sollten doch eigentlich dann im RTE später in der "Paragraph selector"-Box erscheinen, oder? Tun sie aber nicht.
Stattdessen steht dort nur "Normal" und "Adresse"(?) zur Auswahl.

Was habe ich falsch gemacht? o.O

steffenk ·

Du kannst das ganze manuell anpassen, in der locallang.php steht die Konfiguration, Beispiel:

t3lib_extMgm::addPageTSConfig('

    # ***************************************************************************************
    # CONFIGURATION of RTE in table "tx_myxt_field", field "text"
    # ***************************************************************************************
RTE.config.tx_myxt_field.text {
  hidePStyleItems = H1, H4, H5, H6
  proc.exitHTMLparser_db=1
  proc.exitHTMLparser_db {
    keepNonMatchedTags=1
    tags.font.allowedAttribs= color
    tags.font.rmTagIfNoAttrib = 1
    tags.font.nesting = global
  }
}
');
chrisnrw ·

Ja, die Stelle habe ich nun gefunden. Dort hat der Kickstarter auch meine neuen selbst definierten Klassen reingeschrieben.

Nur leider werden diese im Auswahlfeld leider nicht ausgegeben im RTE, dort steht nur noch die Option "Normal" (nachdem ich ADDRESS nun auch abgeschaltet habe).

Hier ist der Teil in meiner ext_localconf.php:

t3lib_extMgm::addPageTSConfig('

	# ***************************************************************************************
	# CONFIGURATION of RTE in table "tx_tzprodukte_beschreibung", field "productdetail"
	# ***************************************************************************************
RTE.colors {
  tx_tzprodukte_beschreibung_productdetail_color1 {
    name = Color 1
    value = #AAAAAA
  }
}

RTE.classes {
  tx_tzprodukte_beschreibung_productdetail_class1 {
    name = Grau
    value = color:#666666;
  }
  tx_tzprodukte_beschreibung_productdetail_class2 {
    name = Rot
    value = color:#FBF7F9;
  }
}

RTE.config.tx_tzprodukte_beschreibung.productdetail {
    
  classesParagraph = tx_tzprodukte_beschreibung_productdetail_class1, tx_tzprodukte_beschreibung_productdetail_class2
  classesCharacter = tx_tzprodukte_beschreibung_productdetail_class1, tx_tzprodukte_beschreibung_productdetail_class2
    
  colors = tx_tzprodukte_beschreibung_productdetail_color1
    
  hidePStyleItems = H1, H2, H3, H4, H5, H6, PRE, ADDRESS
  proc.exitHTMLparser_db=1
  proc.exitHTMLparser_db {
      
    p.fixAttrib.class.list = ,tx_tzprodukte_beschreibung_productdetail_class1,tx_tzprodukte_beschreibung_productdetail_class2
    div.fixAttrib.class.list = ,tx_tzprodukte_beschreibung_productdetail_class1,tx_tzprodukte_beschreibung_productdetail_class2
      
    allowTags = b, strong, i, em, u, div, p, ol, li, ul
  }
}
');

  ## Extending TypoScript from static template uid=43 to set up userdefined tag:
t3lib_extMgm::addTypoScript($_EXTKEY,'editorcfg','
	tt_content.CSS_editor.ch.tx_tzprodukte_pi1 = < plugin.tx_tzprodukte_pi1.CSS_editor
',43);


t3lib_extMgm::addPItoST43($_EXTKEY,'pi1/class.tx_tzprodukte_pi1.php','_pi1','list_type',1);


t3lib_extMgm::addTypoScript($_EXTKEY,'setup','
	tt_content.shortcut.20.0.conf.tx_tzprodukte_beschreibung = < plugin.'.t3lib_extMgm::getCN($_EXTKEY).'_pi1
	tt_content.shortcut.20.0.conf.tx_tzprodukte_beschreibung.CMD = singleView
',43);

Was muss ich da noch ergänzen?