2009-08-13 7 views

Antwort

29

Es ist. Es ist ziemlich einfach zu machen. Ich nehme an, Sie verwenden TemplaVoila, wenn Sie nicht sind, sollten Sie sein: -D

Beginnen Sie, indem Sie einige HTML in Ihre Vorlage mit einem Dummy-Seitentitel. Geben Sie ihm ein ID-Attribut, damit es einfach zu mappen ist. Wie:

<h1 id="page-title">Page Title Here</h1> 

Als nächstes geht in TemplaVoila und Karte, das <h1> Elements mit dem Inhaltstyp "TypoScript Object Path". Wenn Sie nach dem Objektpfad gefragt werden, können Sie alles einfügen, was Sie wollen - Konvention ist, dass dynamischer Inhalt im Namespace "lib" hinzugefügt wird, nennen wir es lib.pagetitle. (Lassen Sie diesen Punkt am Ende dort aus.) Wenn Sie gefragt werden, ob Sie dies "INNER" oder "OUTER" zuordnen möchten, wählen Sie "INNER" - das bedeutet, dass Sie nur den Abstand ZWISCHEN den <h1>...</h1> Tags zuordnen. ("OUTER" bedeutet, dass Sie das gesamte Element ersetzen, einschließlich der Tags, die wir hier nicht haben wollen, weil dies ein H1 bleiben soll.) Speichern Sie Ihre Vorlagenzuordnung.

Gehen Sie jetzt in Ihre Website TypoScript Vorlage. Hier fügen Sie die Logik ein, die den gerade angegebenen Bereich mit tatsächlichem Inhalt füllt. Um den Titel der Seite einzufügen ist eine Angelegenheit von ein paar Zeilen TypoScript.

lib.pagetitle = TEXT 
lib.pagetitle.data = page : title 

Was dies sagt, ist „nehmen den Raum in der Vorlage, die ich auf lib.pagetitle abgebildet erstellen Content-Objekt in diesem Raum von Geben Sie TEXT ein und füllen Sie das Inhaltsobjekt mit dem Titel der Seite. "

Speichern Sie Ihre TypoScript-Vorlage. Jetzt bist du fertig!

Das hört sich auf den ersten Blick kompliziert an, und das ist es, aber das Schöne an diesem System ist, dass es unglaublich flexibel ist. Das dynamische Einfügen von Text ist nur der Anfang. Der TSRef hat alle Details - schauen Sie nach "getText", um einen Geschmack zu bekommen, das ist die Funktion, die den Aufruf "page: title" in Ihrer TypoScript-Vorlage in den Seitentitel fallen lässt.

TSRef ist dein Freund. Ich halte eine gedruckte Kopie davon auf meinem Schreibtisch - wenn Sie TYPO3 zum Singen bringen wollen, ist es Ihr Songbook.

+0

Sie für diese schöne Tutorial Dank! Ich habe versucht, eine solche Funktion in der TSRef zu finden - aber ich nicht (auch ich kann getText im Moment nicht finden), also werde ich weiter suchen :) –

+0

Ja, es kann schwierig sein, bestimmte Sachen in der finden TSRef. Ich hatte versucht, einen direkten Link zu bekommen, um Text zu bekommen, aber SO würde mich nicht b/c Ich bin neu hier.Es ist auf dieser Seite: http://typo3.org/documentation/document-library/references/doc_core_tsref/4.2.1/view/1/2/#id4252676 –

+0

Ich behalte eine gedruckte Kopie mit meinen eigenen Stichwörtern und Markierungen. Alte Schule, ich weiß, aber es funktioniert! – jensgram

1

lib.page_title = CONTENT

lib.page_title {

table = pages 

select {     

    where = uid = 2 

    } 

    renderObj = COA 

    renderObj { 

      10 = TEXT 

      10 {    

         field = title 

         wrap = <h1 class="page_title">|</h1> 

        } 

       20 = TEXT 

       20 {    
         field = subtitle 

         stdWrap.required = 1 

         stdWrap.wrap = <h5>|</h5> 
       } 
      } 
     } 

Aufruf der lib.page_title wo mit diesen Linien machen typoscript wollen

<f:cObject typoscriptObjectPath='lib.page_title' /> 

Ich hoffe, das hilft !!!

2

Wenn Sie eine Flüssigkeit einzige Lösung verwenden möchten, installieren Sie die VHS-Erweiterung und Sie können output the page title ohne jede typoscript überhaupt wie folgt aus:

Tag Beispiel:

<v:page.header.title title="NULL" whitespaceString="' '" setIndexedDocTitle="1"> <!-- tag content - may be ignored! --> </v:page.header.title>

Inline Beispiel:

{v:page.header.title(title: 'NULL', whitespaceString: '' '', setIndexedDocTitle: 1)}

3

Sie können aktuelle Seitentitel mit follow ing typoscript:

lib.pagetitle = TEXT 
lib.pagetitle.data = page : title 

und dann dieses Objekt zu Ihrer Seite verwenden, wie folgt mit typoscriptObjectPath:

<f:cObject typoscriptObjectPath="lib.pagetitle"/> 
3
lib.pagetitle = RECORDS 
lib.pagetitle { 
    source.data = page:uid 
    tables = pages 
    conf.pages = TEXT 
    conf.pages.field = nav_title 
} 

Um aktuelle Seitentitel zu erhalten:

lib.pagetitle = TEXT 
lib.pagetitle.field=title 

Für Meta-Daten :

Es ist sehr wichtig, Meta nach Header-Tag zu setzen, wenn wir über mobile kompatible Website

Um gegangen sind Quirks-Modus in IE9 zu verhindern ich diese Zeilen an der Spitze jeder HTML-Seite hinzufügen muß:

Sie kann selbst die ganzen Header schreiben, durch disableAllHeaderCode Zugabe = 1 zu Ihrem TypoScript oder Sie können es hacken, indem Sie Ihren Meta-Tag direkt an den Head-Tag hinzu:

page.headTag = <head><meta http-equiv="X-UA-Compatible" content="IE=edge" /> 

dieses an Ihrem typoscript

meta.X-UA-Compatible = IE=edge,chrome=1 

httpEquivalent: (Seit TYPO3 4.7) Wenn auf 1 gesetzt, wird das http-equiv-Attribut im Meta-Tag anstelle des Attributs "name" verwendet. Standard: 0.

Weitere Informationen zu TYPO3 Sachen können Sie meinen Blog

besuchen

https://jainishsenjaliya.wordpress.com/2013/10/10/put-meta-tag-on-top-of-header-section-in-typo3/

1

Wenn Sie wollen, dass diese auch {data. title} einfache Verwendung kann in einer Flüssigkeit Seitenvorlage verwenden, um den Seitentitel zugreifen .

0

Ja, wenn Sie die Flüssigkeit verwenden, können Sie auf alle Seiteneigenschaften mit {Daten} zugreifen.

+1

Dies sollte ein Kommentar sein –