• Ich habe einen Loop, welcher mir alphabetisch geordnet in einer Tabelle Angaben über Mitglieder eines Verbandes auflistet:

    Nun möchte ich die gesamte Mitgliederliste noch unterteilen und zwar je nachdem, aus welchen Regionen die Mitglieder stammen. Also zuerst werden alle Mitglieder alphabetisch der Region 1 angezeigt, dann alle Mitglieder alphabetisch der Region 2 usw. Die Variable für die Region ist "region_mitglied". Zusätzlich sollte über jeder "Regionenliste" noch als Titel der Name der Region erscheinen. Geht sowas? Muss ich für jede Region einen eigenen Loop machen?

    • 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

  • Nun gut, scheint ein wenig kompliziert zu sein alles in einen Loop zu packen.

    Wenn ich nun für jede Region einen Loop machen möchte, wie lautet dann der if-Befehl, damit der Loop nur eine Region darstellt? Die Variable für die Region lautet "region_mitglied" und wird aus einem Custom Field ausgelesen.

  • Warum die Sortierung: [COLOR=#000000][COLOR=#007700][/COLOR][COLOR=#DD0000]'orderby' [/COLOR][COLOR=#007700]=> [/COLOR][COLOR=#DD0000]'title'[/COLOR][COLOR=#007700],
    Was steht im Titel?
    [/COLOR][/COLOR]

  • Im 'titel' stehen die Namen der Mitglieder. 'orderby' => 'title' sortiert die Liste der Mitglieder alphabetisch nach dem Namen. Das würde ich gerne für alle "Regionen" beibehalten.

  • [COLOR=#000000][COLOR=#0000BB]query_posts() kann zusätzlich nach category sortiert werden.
    [/COLOR][/COLOR]

    Zitat


    siehe: http://doku.wordpress-deutschland.org/Template_Tags/query_posts

    • orderby=title - ordnet die Beiträge nach dem Postitel. Weitere Optionen für orderby: author, date, category, modified, menu_order


    Wäre das ein Ansatz für dich, Kategorien für die Regionen zu erstellen?
    Dann wäre die erste Auswahl und Sortierung category/title.

    Für heute muss ich aber Schluss machen.

  • Danke schon mal für dein Mitdenken. Ja, das würde wahrscheinlich hinhauen, wenn ich für jede "Region" eine eigene Kategorie definieren würde.
    Allerdings möchte ich das lieber nicht. Die Webseite soll später von verschiedenen Usern genutzt werden können. Für die Eingabe der Mitglieder habe ich im Backend das Plugin "Flutter" installiert, mit welchem die Angaben zu den Mitgliedern (Name, Stellenbezeichnung, Arbeitsort, Region) bequem über Custom Fields eingegeben werden können. In der Backend-Seitenleiste erscheint jedoch ein neuer Menupunkt unter "Artikel" nur für die Eingabe der Mitglieder. Wenn ich dies für alle Regionen einzeln mache, wird die Seitenleiste gefüllt und die Eingabe der Mitglieder etwas komplizierter.
    Deshalb würde ich gerne die Variable 'region_mitglied" für die Sortierung nutzen.

  • Hast du schon eine Lösung?

    Ich habe mich mal versucht, hab es aber nur mit mehreren Abfragen hinbekommen http://lars-ins-parlament.de/mitgliederliste/ :

    Einmal editiert, zuletzt von bgeissler (30. Dezember 2009 um 18:00)

  • Wouw,herzlichen Dank für deine Beiträge! Ich bin grad für ein paar Tage im Ausland und kann deine Vorschläge erst in 2 Tagen ausprobieren. Die klingen jedoch sehr interessant...

  • Ich habs jetzt ausprobiert und...

    bgeissler, du bist mein Held!

    Ich musste noch eine kleine Veränderung machen (query_post in deinem Beispiel hat bei mir irgendwie nicht ganz richtig funktioniert, habs aber hingekriegt ;-) ) und natürlich das Ganze noch mit einer Tabelle formatieren. Jetzt funktionierts tadellos.

    Nochmals ein grosses Danke an dich!

  • Bitte. Was hat denn bei query_postnicht gepasst?

    Ich bin aber noch weiter an dem Thema dran.
    Eigentlich ist die Abfrage der Posts nicht das Gelbe vom Ei, da die Posts ja nicht benötigt werden. Ich werde es deshalb noch über eine SQL Abfrage der DB ausführen.

  • Als ich genau deinen Code in meine Seite kopierte, wurden bei der zweiten "Region" keine Einträge angezeigt. Kann jedoch auch sein, dass ich da etwas mit der Variablen durcheinander gebracht habe. Jedenfalls wollte ich noch query-post mit " 'posts_per_page' => -1," ergänzen, da ich entgegen meiner Einstellung im Backend alle Mitgliedereinträge anzeigen will. Das habe ich mit "deiner" Schreibweise des Codes irgendwie nicht hingekriegt. Deshalb änderte ich die Stelle in

    PHP
    query_posts(array(
               'cat'=> 20,
               'posts_per_page'     => -1,
               'orderby' => 'title', 
               'order'   => 'ASC',
        ));

    und siehe da, alles klappte wunderbar!

  • Hier jetzt noch der flexiblere Code:

Jetzt mitmachen!

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