Go to main content

Textpattern CMS support forum

You are not logged in. Register | Login | Help

#1 2010-06-17 19:53:52

fantasmo
Member
Registered: 2010-05-05
Posts: 40

[de-de] related_articles letzten Artikel mit class="last" versehen

Hallo,

nachdem ich stundenlang rumprobiert und gesucht habe, wollte ich frage ob hier nicht jemand weiß, wie ich bei der Ausgabe von “related_articles” (als Liste <ul>) dem letzten <li> eine Klasse zufüge? Ich brauch das nämlich unbedingt für meine CSS-Formatierung.

Was ich bislang probiert habe:
Die related articles sollen unten unter einem kompletten Artikel kommen, also habe ich in die form “default” unten geschrieben
<txp:related_articles limit="3" sort="rand()" wraptag="ul" break="" form="related_article" />

Und in der form “related_article” steht letztlich:
<li <txp:if_last_article>class="last"</txp:if_last_article>> <h3><txp:permlink><txp:title /></txp:permlink></h3> <txp:article_image /> </li>

Na jedenfalls das funktioniert einfach nicht.

Ich habe alles tausendmal noch umgestellt…Entweder haben alle die Klasse “last” oder keiner…oder es kommt dreimal hinter einander Zwei normale <li> mit einem <li class=“last”>.
Es will einfach nicht klappen.

Offline

#2 2010-06-17 20:19:10

GugUser
Member
From: Quito (Ecuador)
Registered: 2007-12-16
Posts: 1,477

Re: [de-de] related_articles letzten Artikel mit class="last" versehen

Ich habe noch nie mit <txp:related_articles /> gearbeitet, und mir ist nicht klar, ob das Problem eventuell darin bestehen könnte, dass das ganze nicht als Artikelliste verstanden wird.

Aber, es gibt auch noch eine andere, potentielle Fehlerquelle. Im Baustein steht <li <txp:if_last_article>class="last"</txp:if_last_article>>, dass heisst, wenn keine Klasse vergeben wird, könnte <li> eventuell so aussehen <li >. Ob das eine Rolle spielt?

Falls ja, dann müsste der Anfang im Baustein so lauten <li<txp:if_last_article> class="last"</txp:if_last_article>>.

Ob das etwas bringt?

Offline

#3 2010-06-17 20:47:44

fantasmo
Member
Registered: 2010-05-05
Posts: 40

Re: [de-de] related_articles letzten Artikel mit class="last" versehen

Ich hab das mit dem Leerzeichen weglassen grad probiert, das ändert nichts.

Es werden drei ausgewählte Artikel jedoch ALLE mit <li class=“last”> angezeigt (wegen dem Leerzeichen auch noch fehlerhaft <liclass=“last”>

Wie könnte man vielleicht mit einer anderen Lösung das machen?
Also es geht eben drum, drei Artikel aus der selben Kategorie, nach zufallsprinzip ausgewählt anzuzeigen…und beim letzten eben mit class=“last” dran.
Das mit dem “related_articles” hab ich nur im textbook entdeckt und es schien bis auf diese doofe Sache, eine gute Lösung zu sein.

Offline

#4 2010-06-17 21:05:10

GugUser
Member
From: Quito (Ecuador)
Registered: 2007-12-16
Posts: 1,477

Re: [de-de] related_articles letzten Artikel mit class="last" versehen

Schau dir mein Beispiel genau an, vor class steht ein Leerzeichen.

Offline

#5 2010-06-18 01:52:07

graumeister
Plugin Author
From: Ban Bang Por, Samui, Thailand
Registered: 2005-01-16
Posts: 167
Website

Re: [de-de] related_articles letzten Artikel mit class="last" versehen

Dass da ein Leerzeichen steht ist kein Problem, lt. html declaration koennen beliebig viele leerzeichen in den tags stehen.

if_last_article greift nur in artikel-listen. das sind listen die mit txp:article und txp:article_custom erstellt wurden.

versuchs mal mit txp:variable (http://textpattern.net/wiki/index.php?title=variable) – am anfang auf null setzen, pro aufruf im form “related_articles” um eins erhoehen und wenn es auf 3 steht das class-attribut ausgeben.


Samui? Samui! (about the life as farang in thailand)
David’s Neighbour

Offline

#6 2010-06-18 01:54:53

graumeister
Plugin Author
From: Ban Bang Por, Samui, Thailand
Registered: 2005-01-16
Posts: 167
Website

Re: [de-de] related_articles letzten Artikel mit class="last" versehen

uebrigens: du brauchst keine klasse last um das letzte element zu formatieren:

ul li:last-child tut es auch.


Samui? Samui! (about the life as farang in thailand)
David’s Neighbour

Offline

#7 2010-06-18 04:56:49

GugUser
Member
From: Quito (Ecuador)
Registered: 2007-12-16
Posts: 1,477

Re: [de-de] related_articles letzten Artikel mit class="last" versehen

graumeister:

:last-child ist CSS 3 und wird vom IE bis Version 8 nicht unterstützt. Falls ich in einer Website sowieso jQuery benutze, dann löse ich das für die IE damit.

Das mit den erlaubten Leerzeichen hatte ich nicht gewusst, war mir noch nie in den Sinn gekommen, so etwas zu tun.

fantasmo:

Ich habe noch eine andere Variante versucht, die in meiner Experimentierumgebung funktioniert:

<txp:if_individual_article>
<txp:article_custom category='<txp:category1 />' limit="3" wraptag="ul" class="" break="" form="related_article" />
</txp:if_individual_article>

Offline

#8 2010-06-18 10:05:49

fantasmo
Member
Registered: 2010-05-05
Posts: 40

Re: [de-de] related_articles letzten Artikel mit class="last" versehen

Vielen tausend Dank für Eure Hilfe!!

@GugUser Deine Lösung mit “article_custom” hat funktioniert. Und sogar noch mit sort=“rand()” dazu. Ich kenne “if_individual_article” nur vom Anzeigen der Ansicht für einen einzelnen Artikel im sozusagen “Single View”. Ich kann im Moment noch gar nicht nachvollziehen, wie das hier rein passt… nur “article_custom” wäre hier wohl auch verkehrt gewesen, oder?!
PS: Eigentlich müsste “related_article” von Natur aus auch, eine Artikelliste sein und mit dem if_last/first_article funktonieren…denn es zeigt ja eben doch Artikel und das zumeist als Listenform an?!

Gut dass das so auch mit CSS-Klassen funktioniert. Den IE hätt ich nur sehr ungern einfach beiseite lassen wollen.

Offline

#9 2010-06-18 14:01:58

graumeister
Plugin Author
From: Ban Bang Por, Samui, Thailand
Registered: 2005-01-16
Posts: 167
Website

Re: [de-de] related_articles letzten Artikel mit class="last" versehen

@guguser: :last-child ist CSS 2


Samui? Samui! (about the life as farang in thailand)
David’s Neighbour

Offline

#10 2010-06-18 14:35:28

GugUser
Member
From: Quito (Ecuador)
Registered: 2007-12-16
Posts: 1,477

Re: [de-de] related_articles letzten Artikel mit class="last" versehen

@graumeister:

Ohne polemisieren zu wollen, aber das ist mein Wissensstand, und falls ich mich irren sollte, lerne ich gerne Neues dazu:

:first-child ist CSS 2, oder beim W3C

:last-child ist CSS 3, oder beim W3C

Offline

Board footer

Powered by FluxBB