Jeder zweite Beitrag | Letzten 3 Artikel-Anzeige

  • Hallo,
    ich hab 2 Anliegen.

    Erstens - ich weiß, das Thema gab es hier mit Sicherheit schon etliche Male, nur leider wüsste ich nicht, wonach ich suchen soll, also frag ich einfach Mal. Wie kann man jedes zweites Kommentar anders aussehen lassen?

    Zweitens - ich würde auf der Hauptseite gern unter dem letzten Artikel eine Liste haben, wo die letzten 5 Artikel angezeigt werden. Allerdings nur die Überschriften. Sprich ne art Archivfunktion. Gibt es da was schönes?

    Ich bin jeder hilfe dankbar.
    mfg

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Ich kenn dein Theme nicht, daher nur ein bisschen Theorie:

    1. In der comments.php gibts irgendwo die foreach($comments as $comment) Schleife, davor folgendes einfügen:

    PHP
    <?php $oddcomment = "even"; ?>

    Und am Ende der Schleife, also vor dem "endforeach;"

    PHP
    <?php if($oddcomment == "even") { $oddcomment = "odd"; } else { $oddcomment = "even"; } ?>

    Dann noch das <div class="comments"... so abändern:

    PHP
    <div class="comments <?php echo $oddcomment; ?>"...

    So, damit haste zwei neue Klassen .even und .odd, die du deinen Wünschen entsprechend formatieren kannst. Sollten die Bezeichner in deinem Theme nicht ganz so stimmen einfach ein bisschen rumprobieren, der grundsätzliche Aufbau ist auf jeden Fall so wie oben beschrieben.

    2. Natürlich auch sehr theme-spezifisch, daher nur eine allgemeine Beschreibung wie du eine zweite Loop mit den letzten 5 Artikeln erzeugst:

    PHP
    <?php $wp_query = new WP_Query('showposts=5'); ?>
    <?php if($wp_query->have_posts()) : while($wp_query->have_posts()) : $wp_query->the_post() ?>
    Hier entsprechend ausgeben und mit CSS formatieren
    Einfache Titel-Ausgabe erreicht man mit der Funktion the_title()
    <?php endwhile; endif; ?>

    Hoffe damit konnte man dir helfen.

    Gruß Jeriko

    Jeriko - Design, Style, Photographie

    Einmal editiert, zuletzt von Jeriko (24. Juli 2006 um 20:54)

  • So, danke für die Antwort,
    jedoch hat keines der beiden Lösungen funktioniert.
    Hier mal die Fehler:
    1. Ich hatte dann die ganze Zeit nur als Ausgabe im Quelltext

    <div class="comments even">

    Sprich ich hatte weiterhin nur eine Klasse.

    2. Das hat auch absolut nicht funktioniert, die Ausgabe war einfach nur, dass mir der letzte Beiträge etliche tausend Mal in der Hauptansicht angezeigt wurde.


    Hat jemand anderes ne Hilfelösung ?

  • ein Auszug aus meiner comments.php die die Kommentare unterschiedlich anzeigt:


    so habe doch noch Zeit,


    der Loop muss in der index.php abgeschlossen sein !

    sonst geht nichts...

    dann :

    PHP
    <ul><li><h2><?php _e('More Articles ...'); ?></h2>
                <ul><?php $posts = get_posts('numberposts=5&offset=10');    foreach($posts as $post) :    setup_postdata($post);    ?>
                <li><?php the_time(__('d.m.:')) ?><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link: <?php the_title(); ?>"><?php the_title(); ?></a></li>
                <?php endforeach; ?>
                </ul></li></ul>

    dies zeigt 5 Artikel an Minus den 10 oberen, wenn Du 10 auf der Startseite anzeigen läßt,

    der Loop ist aus, wenn alle endif usw in der index.php angezeigt werden,
    knapp vor dem Einbinden der Sidebar.php
    so ungefähr.....

    PHP
    <?php endwhile; ?>
    
    
    <?php else : ?>
    <div class="article"><h2><?php _('Sorry not found...');?></h2>
    <p><?php _e('Your text here. Give the user a chance to find the content.');?> </p>
    <br />
    </div><!--article end-->
    <?php endif; ?>


    lg

    lg

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!