Artikel zählen

  • Hallo Community,
    auf einer angepassten Seite lasse ich mittels dem Befehl:

    Code
    query_posts('cat=3,4,5,6,7,8&showposts=100&monthnum=8&year=2007'

    Artikel aus dem Monat 8 und dem Jahr 07 ausgeben.

    Jetzt möchte ich eine fortlaufende Zahl vor jeden Artiel stellen, also quasi eine Aufzählung, der wie vielte Artikel das aus dem Jahre 2007, unter Berücksichtigung aller Monate ist.

    Hat jemand eine Idee wie das geht?

    Grüße,
    HeFi

    • 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

  • Muss die Zahl auch erscheinen, wenn man den Artikel selber anklickt oder reicht es, wenn es nur auf der Übersichtseite stimmt?
    Wenn ja, dann man kann man das ganz einfach machen in dem man einfach einen Zähler jeweils um 1 hochzählen lasst und den Stand ausgibt.

    Vor query posts folgenden Befehl:

    PHP
    <?php $i = 0; ?>


    Und dann wo der Post ausgegeben wird (also in der Nähe von the_content) dann das:

    PHP
    <?php $i++; echo $i ;?>


    Das sollte reichen und funktionieren.

    "Eine gut gestellte Frage ist schon halb beantwortet."

  • Danke,
    im Prinzip funktioniert das auch, aber, jetzt ist die Sortierung genau falsch herum! Die 1, soll ganz unten erscheinen und nicht ganz oben, da oben immer die Neuen Artikel an obeste Stelle kommen!

    Hättest du natürlich eher erwähnen sollen...Man könnte meinem umgekehrt ginge es genauso einfach, aber dem ist leider nicht so.
    Man muss erstmal rausfinden (und zwar schon am Anfang), wieviele Beiträge im aktuellen Query denn ausgegeben werden.
    Vielleicht fällt mir oder jemand anderem ja noch was ein.

    "Eine gut gestellte Frage ist schon halb beantwortet."

  • Sorry, da gebe ich dir Recht, die durchaus nützliche Information hätte ich euch nicht vorenthalten sollen! Wäre trotzdem super jemand hätte eine Patentlösung für das Problem!

  • Hmm, so könnte auf die Schnelle die SQL-Abfrage aussehen:

    PHP
    $anzposts_query = 'SELECT COUNT(*) FROM `wp_posts` WHERE year(post_date) = \'2007\' AND month(post_date) = \'08\' AND `post_category` = 3 AND `post_category` = 4 AND `post_category` = 5 AND `post_category` = 6 AND `post_category` = 7 AND `post_category` = 8 LIMIT 100';


    Dann hast du die Anzahl in der Variablen $anzposts_query und kannst damit analog zu jottlieb's Ansatz einfach runter zählen...

    [SIZE="1"]Keine Gewähr auf die Richtigkeit des Queries...[/SIZE]

    edit. Die Kategorie-Abfrage ist falsch, denke ich.. :|

    edit2. So sollte es funzen.

    wpseek.com - Die WordPress-Code-Suchmaschine

    Einmal editiert, zuletzt von Alphawolf (27. August 2007 um 22:26)

  • Wenn er wirklich nur eine Seite hat, kann man das machen.
    Aber für jede neue Seite mit anderen Bedingungen muss er dann natürlich auch einen neue DB-Abfrage schreiben.

    Wobei mir gerade auch noch eine Idee kommt, zwar nicht schön, aber dürfte funktionieren.

    Vor dem eigentlichen Query+Loop nochmal den gleichen Query machen aber nur mit der Absicht, die Beiträge zu zählen (in eine Variable).
    Und dann im nächsten Query+Loop die Variable nutzen um runterzuzählen ;)

    Aber die Datenbankvariante wäre wohl schon besser, da schneller auszuführen als der zusätzliche Loop.

    "Eine gut gestellte Frage ist schon halb beantwortet."

  • Nach langem gesuche hier im Forum, schreib ich mein Problem hier nur einfach drunter...

    Ich möchte einfach nur auf einer Kategorie-Seite die Anzahl der dort geposteten Artikel anzeigen lassen...

    Bsp:

    23 Artikel wurden in dieser Kategorie gepostet

    Text is ja egal und kann ja geändert werden, mir gehts nur um das Zählen...

    vielen Dank :)

Jetzt mitmachen!

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