Zum Inhalt springen

tt_news readmore Link "a"-Tag mit Klasse

Erstellt am 6. Mai 2012 · 3 Antworten · letzte Antwort am 7. Mai 2012

Tags: Links, tt_news, Frage

timmy2007 ·

Wie kann ich im tt_news Template-List den Readmorelinkbutton mit einem a-Tag-Attribut und dazugehöriger Klasse angeben?

Mein Quellcode soll durch Typoscript so aussehen:

<a href="single.html" class="learnmore">Read More</a>

Im TSREF steht zwar wie man mit parseFunc und den Parametern einen Link eine Klasse zu sprechen kann:

ZITAT: Klasse
Wenn Sie einen "dritten" Parameter (mit einem Leerzeichen abgetrennt) angeben, wird dieser Wert zum class-Attribut des Links. Dieser Klassen-Parameter wird vor den Werten von ».ATagParams in den Link-Tag eingefügt. Das bedeutet (zumindest beim MSIE), dass diese Klasse jede in ».ATagParams gesetzte Klasse überschreibt.

Beispiele von Multiparametern:
Wenn dieser parameter-Wert an die Funktion geleitet wird,...
51 _blank blueLink
...wird das einen derartigen Link erzeugen:
<A href="?id=51" target="_blank" class="blueLink">
ZITAT ENDE

Es muss doch eine Möglichkeit mit Typoscript geben oder?

LuP ·

Hallo,

Leider hat tt_news ATagParams für den more-Link nicht vorgesehen.
Über einen kleinen Umweg kann man dennoch den Link zusammenbauen und die gewünschte Klasse per TS setzen:

page.5 = LOAD_REGISTER
page.5 {
    readmore.cObject = TEXT
    readmore.cObject {
      value = Read more
      lang.de = Weiterlesen
    }
}

plugin.tt_news {
    displayList {
        subheader_stdWrap >
        subheader_stdWrap {
            stripHtml = 1
            crop = 230 | ... | 1
            ifEmpty.field = bodytext
            append = TEXT
            append.data = register:newsMoreLink_url
            append.dataWrap = <span class="news-list-morelink"><a class="learnmore" href="|" title="{field:title}">{register:readmore}</a></span>
	    append.if.isTrue.field = bodytext
        }
    }
}

VG,
LuP

timmy2007 ·

Danke für den Code. Dieser funktioniert, ABER nun werden beide "Read more" Links angegeben, der formartierte und der unformartierte Button. Habe eine Grafik als Anhag beigefügt.

Wie kann ich den unteren nicht formartierten Button so, wie ich es brauche, formatieren und den Button, der sich direkt am Text anhängt, löschen?

Kleines Update:

Wenn ich anstatt "subheader_stdWrap" nun "subheader_stdWrap.append" eingebe, geht mir er "erste" und formartierte Button verloren. Der zweite bleibt stehen. Kann man den zweiten Button auch formatieren? Oder kann man den ersten Button an die Stelle des zweiten Buttons rücken?

test-screen-1.jpg

timmy2007 ·

Um den zweiten Read-More Button zu entfernen habe ich das in der tt_news HTML Vorlage entfernt.

Um den formartierten Button nun in die gewünschte Position zu bringen, habe ich nun den TS Code folgendermaßen ein ganz wenig geändert:

page.5 = LOAD_REGISTER
page.5 {
    readmore.cObject = TEXT
    readmore.cObject {
      value = Read more
      lang.de = Weiterlesen
    }
}
 
plugin.tt_news {
    displayList {
        subheader_stdWrap >
        subheader_stdWrap {
            stripHtml = 1
            crop = 230 | ... | 1
            ifEmpty.field = bodytext
            append = TEXT
            append.data = register:newsMoreLink_url
            append.dataWrap = <br /><br /><a class="learnmore" href="|" title="{field:title}">{register:readmore}</a>
      append.if.isTrue.field = bodytext
        }

Gibt es dazu evtl. noch eine schönere Variante?