Typo3Schnipsel

Aus Debacher-Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Sektionsüberschrift

Für ein zweidimensionales Menü, erste Ebene horizontal, zweite Ebene Vertikal wollte ich erreichen, dass über den Menüpunkten der zweiten Ebene ein Text steht, der etwas ausführlicher ist, als der Text des Titels. Dafür bietet sich das Feld subtitle ja an.

Folgender Code referenziert dann passend:

temp.menu_links = COA
temp.menu_links {
 10 = TEXT
 10.data = levelfield:2, subtitle , slide
 20 = HMENU
 ...

Im Prinzip kann man damit alle Felder der höheren Ebene erreichen, zusätzlich muss man aber die Felder im Installtool in die Rootline mit aufnehmen

[FE][addRootLineFields] = subtitle

Nur title ist da wohl standardmäßig drin, eventuell auch media.

Größe für Bilder

Seltsamerweise beschränkt Typo3 die Größe von einzubindenden Bildern auf 1MB, auch wenn die Datei schon auf dem Rechner liegt. Die Fehlermeldung beinhaltet "exceeds limit (1.0 M)".

Es gibt anscheinend keine Möglichkeit das im Install-Tool zu ändern, es ist auch keine PHP-Einstellung. Man muss im Ordner typo3conf die Datei extTables.php bearbeiten.

 <?php
 /**
  * Overriding $TCA
  *
  * The TYPO3 Configuration Array (TCA) is defined by the distributed tables.php and ext_tables.php files.
  * If you want to extend and/or modify its content, you can do so with scripts like this.
  * Or BETTER yet - with extensions like those found in the typo3conf/ext/ or typo3/ext/ folder.
  * Extensions are movable to other TYPO3 installations and provides a much better division between things! Use them!
  *
  * Information on how to set up tables is found in the document "Inside TYPO3" available as a PDF from where you downloaded TYPO3.
  *
  * Usage:
  * Just put this file to the location typo3conf/extTables.php and add this line to your typo3conf/localconf.php:
  * $typo_db_extTableDef_script = 'extTables.php';
  */
 
 // Raise upload limit for images in 'image' content-elements to 10*1024 bytes = 1MB
 $GLOBALS['TCA']['tt_content']['columns']['image']['config']['max_size'] = 100*1024;
 $GLOBALS['TCA']['tt_content']['columns']['media']['config']['max_size'] = 100*1024;

 

hier muss einfach das #-Zeichen vor der letzten dargestellten Zeile entfernt werden und noch die Zeile

$typo_db_extTableDef_script = 'extTables.php';

angehängt werden.


rg_realmedia

Auch bei diesem Plugin schlägt die Größenbschränkung zu. Der zugehörige Eintrag in der Datei extTables.php lautet:

$GLOBALS['TCA']['tt_content']['columns']['tx_rgrealmedia_realmediafile']['config']['max_size'] = 200*1024;

damit sind RealMedia Dateien bis 20MB Größe möglich.


Statische Seiten simulieren

Die normalen Links von Typo3 sind nicht besonders schön, sie haben den Aufbau

index.php?id=7

wobei hier die 7 die Nummer der Seite darstellt.

Mit ein paar kleinen Konfigurationen kann man das Verändern. Dazu muss man sowohl an die Webserver-Konfiguration heran, als auch an die Typo3-Konfiguration.

Änderungen bei Typo3

Mit den Zeilen:

config.simulateStaticDocuments = 1
config.simulateStaticDocuments_noTypeIfNoTitle = 1

im root-Template wird Typo3 veranlasst Links in der Form 7.html statt index.php?id=7 zu erzeugen. Falls ein Alias-Eintrag für die Seite vorhanden ist, so wird dieser Text statt der Seitennummer genommen.

Genaugenommen erzeugt Typo3 hier Links, mit denen es nichts anfangen kann.


Änderungen am Apache

Der Apache muss nun die verbogenen Links von Typo3 wieder zurückbiegen. Dazu muss das Modul rewrite aktiviert sein, bei SuSE-Systemen geht das über einen Eintrag in der Datei /etc/sysconfig/apache2:

APACHE_MODULES="alias auth include log_config mime negotiation setenvif ssl rewrite"

Die Zeile kann sehr viele Module enthalten, wichtig ist nur, dass rewrite hier auftaucht. Anschließend müssen die Änderungen noch aktiviert werden:

SuSEconfig --module apache2
rcapache2 restart

Nun kann man die Rewrite-Engine benutzen, die für Adress-Umsetzungen zuständig ist. Dazu packt man die folgenden Zeilen in die Datei .htaccess im Wurzelverzeichnis der Typo3-Installation.

RewriteEngine  On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[^/]*\.html$ index.php


Individuelles Logo für Rubriken

Gelegentlich möchte ich für jede Seite ein Logo haben, welches von der Rubrik, also der Seite auf der ersten Ebene abhängig ist. Das ist relativ einfach zu realisieren. Die Grafikdatei wird an der Startseite der Rubrik verankert, dazu geht man auf die Seiteneigenschaften und stellt den Typ der Seite auf Erweitert um. Nun kann man zu der Seite eine Grafikdatei dazu laden.

Der folgende Typoscript-Code bindet dann eine allgmeines Logo vorne und im hinteren Bereich das spezifische Logo ein:

temp.logo = IMAGE
temp.logo.file = GIFBUILDER
temp.logo.file {
      XY = 990, 148
      backColor = #444444
      5 = IMAGE
      5.file = fileadmin/vorlage/logo.gif
      5.offset = 0,0
      10 = IMAGE
      10.file.import=uploads/media/     
      10.file.import.data = levelmedia: -1,slide
      10.file.import.listNum = 0
      10.file.import.override.field = media
      10.offset = 198,0
}

Wichtig ist hier das slide, dadurch muss man das Logo nicht auf allen Seiten einbinden, wenn keine Datei gefunden wird, dann geht Typo3 im Seitenbaum nach oben und sucht dort nach einer passenden Datei.

Meine Werkzeuge