Den RSS-Feed dieses Blogs abonnieren
mediavrog @ twitter

eigenes Stylesheet / CSS im Backend Modul der eigenen Extension in Typo3

Für alle die es auch interessiert. Es gibt die Möglichkeit, ein zusätzliches Stylesheet im Backendmodul einer selbst geschriebenen Typo3-Extension zu laden.

In der main-Funktion des Backendmoduls wird per

$this->doc = t3lib_div::makeInstance('mediumDoc');

eine Instanz des template-Objektes erstellt, welches einige interessane Funktionen bietet.
(Nachzulesen in der offiziellen Klassendokumentation).

Unter Anderen besitzt es die Membervariable styleSheetFile2, welche standardmäßig nicht gesetzt ist.
Und genau hier docken wir an. Beispielhaft hier mal meine Implementation:

$this->doc->styleSheetFile2 = "../".substr(t3lib_extMgm::extPath($this->extName),strlen(PATH_site))."mod1/style.css";

$this->extName habe ich selbst als Membervariable meines Module gesetzt (tx_meineExtension).
Die style.css liegt wie zu erkennen im Ordnerdes mod1-Verzeichnisses.
Die subst-Funktion wird verwendet um einen relativen Pfad zu generieren.

Update
Robert Heel postete diesen (einfacheren) Vorschlag - Danke!

$this->doc->styleSheetFile2=$GLOBALS["temp_modPath"].’style.css’;
  • Abgelegt unter: EXT
  • Erstellungsdatum: 27 Mai 2007
  • 6 Kommentare ansehen

Kommentare ( als RSS 2.0-Feed abonnieren - Trackback-URL - Kommentar schreiben )

  1. Kommentar von Oliver Leitner

    Hi mediavrog, danke erst einmal für die antwort, leider hat das auch nicht die auswirkung, die ich mir wünschen würde… er zeigt noch immer den pagetree…

    was ich eventuell versuchen werde… eine backend testext machen, und mal die index.php complett leeren, um zu schauen, woher er den tree genau bekommt…

    • Gravatar
    • #5
  2. Kommentar von mediavrog

    hallo,
    hab jetzt gerade keine zeit um tiefer zu graben aber probiers mal mit

    $this->doc = t3lib_div::makeInstance('bigDoc');

    gib Bescheid obs geklappt hat :)
    Beste Grüße

    • Gravatar
    • #4
  3. Kommentar von Oliver Leitner

    Kleine Frage am Rande…

    Im backend hat man ja normalerweise den pagetree (ausser wenn man im condensed mode werkelt…)

    wie kann ich jetzt im index.php sagen, dass ich den pagetree, wenn wer mein mod anklickt, nicht mehr sehen will…?

    • Gravatar
    • #3
  4. Kommentar von mediavrog

    Hallo,

    danke für Deine Implementation. Wie ich oben schon erwähnte, habe ich $this->extName selbst gesetzt und das CSS beispielhaft implementiert.

    Eine Frage habe ich zu deiner Lösung:
    Ist $GLOBALS[”temp_modPath”] der Pfad zum aktuellen mod-Verzeichnis einer geladenen Extension oder wohin hast du dein CSS-File gespeichert?

    Grüße

    • Gravatar
    • #2
  5. Kommentar von Robert Heel

    Die Variable $this->extName ist bei mir nicht gesetzt. Dafür funktioniert
    $this->doc->styleSheetFile2=$GLOBALS["temp_modPath"].’style.css’;

    • Gravatar
    • #1
    • Icon: Ping
    • 1

Schreib was dazu...

XHTML: Du kannst die folgenden Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

  • Icon: Notiz
top top