Wie ihr vielleicht wisst, habe ich vor einpaar Tagen einen speziellen Tag bekanntgegeben, und zwar den BasicBlogger WordPress Tag. Obwohl ich Morgen und Montag antworten wollte, starte ich schon heute, da mir die Idee von CrazyGirlsTipps gefällt.
[...] Und zwar geht es um die neue WordPress 2.7 Funktion sticky, mit der man einen oder mehrere Beiträge auf der Startseite fixieren kann.
Die Funktion finde ich im Grunde genommen ziemlich gut, doch fehlt ihr in meinen Augen einiges an Flexibilität. Denn für die Startseite finde ich sie gar nicht so dolle. Viel interessanter wäre es, wenn man die für jede Kategorie und jeden Tag einsetzen könnte. Und zwar nicht nur mit einem Beitrag, der für alles gilt, sondern für jede Kategorie und jeden Tag individuell.
Und ich habe gleichmal dran gearbeitet. Eine erste Lösung habe ich gefunden. Eine sehr leichte Lösung, hier wie diese Lösung lautet:
Mache einen Backup deiner “archive.php” Theme Datei.
Hier eine ganze Beispiel “archive.php” Datei des Default Themes, Zeile 43-53 = Zeile 59-69, einfach Zeile 43-53 mit deinem Code ändern und dann Zeile 37-55 Kopieren und bei deiner archive.php Datei einfügen: [archive.php_beispiel @ Quakenet#PHP]
Wie man nun die Stickyposts von der Startseite normal anzeigen lässt (also nicht als Sticky), da muss ich noch nachschauen, aber eine erste Lösung habe ich bei [WPEngineer] gefunden [Artikel @ WPEngineer].
Bei fragen gerne via Kommentar :)
Wenn ihr dies nicht geschafft habt, und auch nichts dagegen habt, schickt mir eure archive.php via Email, und ich werde euch die bearbeitete Version zuschicken :)
Januar 5, 2009 um 5:24 pm Uhr
Nicht so ganz das, was ich meinte… damit fragst Du ja nur den allgemeinen sticky-post ab (is_sticky) und gibst ihn im Archiv aus. Ginge dann bei den Tags übrigens ähnlich, dazu braucht es die tag.php
Was ich aber generell damit meinte ist, individuelle stickies z.B. für jede Kategorie zu bestimmen und auszugeben. Mit der jetzigen Funktion kann man ja nur einen Blogbeitrag als generell sticky setzen. Die Funktion die ich meinte, sollte in jeder Kategorie einen anderen sticky ermöglichen.. In Deinem Blog als Beispiel wäre das einen Beitrag in der Kategorie WP Codex und einen ganz anderen in der Kategorie WordPress. D.h. es müsste diese Funktion generell geben, dann die jeweilige Eingabemöglichkeit dazu im Admin und natürlich die Ausgabe in den entsprechenden Templates.
Januar 5, 2009 um 5:31 pm Uhr
@CGT
Hast du es schon probiert? Es ist so, es holt jeden beitrag aus der kategorie, in der man sich befindet, dann fragt es ab ob es sticky ist, fals ja, dann stehts ganz oben, fals nein dann normal.
Das funktioniert echt!
Einfach bei einem post sticky wählen, kategorie wählen, abspeichern fertig.
Es ist schon so wie du es wolltest!
Januar 5, 2009 um 5:40 pm Uhr
Nochmal:
Mit
$categoryvariable = ($cat);
$stickyposts = new WP_Query('cat=' . $categoryvariable . '&showposts=1');
while($stickyposts->have_posts()) : $stickyposts->the_post();
frag ich erstmal die Kategorie ab, in der man sich befindet. Danah frage ich mit
is_stickyob der artikel auch sticky ist ;) Also wird die sticky post angezeigt, die auch in der kategorie ist ;DJanuar 6, 2009 um 8:09 pm Uhr
Ich habs gerade ausprobiert, hat leider nicht funktioniert. Der Sticky wird nur auf der Startseite angezeigt, nicht in der Kategorie :-(
Kann das vielleicht daran liegen, dass die Funktion sticky selbst irgendwie mit der Startseite verknüpft ist. Man gibt es ja in 2.7 mit dem Klick “auf der Startseite fixieren” ein?
Januar 7, 2009 um 11:00 am Uhr
@CGT
Dann bleibt mir keine andere Chance als ein Beispiel anzuzeigen :D
Ich erstell mal eine Musterseite, warte mal bitte…
Kann es daran liegen, dass du nicht in der Kategorie warst, inder auch die Sticky nachricht war???
Januar 7, 2009 um 11:09 am Uhr
@CGT
Schau mal Artikel Update