Textpattern CMS support forum
You are not logged in. Register | Login | Help
- Topics: Active | Unanswered
#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
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
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
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
Offline