Custom-Post-Types: Kann ich in einer Query nach Inhalten suchen/sortier?

  • Hallo liebe Member,

    ich habe ein Problem bei der folgenden Situation:

    Ich habe einen eigenen Custom-Post-Type "Bilder" angelegt. Hier werden verschiedene Infos zu einem Bild angelegt, unter Anderem auch eine Voting-Punktzahl, die intern berechnet wird ("vote"). (Je höher die Punktzahl, desto beliebter das Bild).

    Bei der Ausgabe auf verschiedenen festen Seiten möchte ich alle Bilder ausgeben, deren Punktzahl innerhalb vorgegebener Grenzen (100-200 Punkte / 200-500 Punkte ...) liegen. Die Grenzen werden pro Seite durch eine benutzerdefinierte Variable "Intervall" festgelegt. Die Ausgabe soll nach Punktzahl absteigend angezeigt werden.

    Um nun auf einer Seite die passenden Bilder anzuzeigen, werte ich zunächst die benutzerdefinierten Variable "Bereich" aus:

    PHP
    function showpics() {
       global $post;
       $b = get_post_meta( $post->ID, 'Intervall', true );
    
    
       ...
    }

    Intervall wird nun weiterverarbeitet und es wird daraus "minPkt" und "maxPkt" generiert - also die Mindestpunktzahl und die maximale Punktzahl, um angezeigt zu werden. Das funktioniert problemlos.
    Um nun die Bilder anzuzeigen, erzeuge ich eine neue WP_Query:

    PHP
    $pics = new WP_Query( array( 'post_type' => 'Bilder', 'order' => 'DESC', 'order_by' => ??? );

    Hierzu habe ich zwei Fragen:
    - Was gebe ich dort ein, wenn ich nach dem Feld "vote" sortieren möchte? "vote" (der Feldname) funktioniert nicht. In der Beschreibung habe ich 'menu_order' gefunden, das funktioniert aber auch nicht.
    - Kann ich gleich eine Begrenzung in die Query einbauen ähnlich ...
    WHERE vote >minPkt AND vote <= maxPkt oder
    WHERE vote BETWEEN[minPkt,maxPkt] ?

    Um nun an die Custom-Post-Types der Abfrage heranzukommen, erstelle ich eine Loop. In der Loop möchte ich nun die "vote"-Werte der einzelnen Bilder (und einige andere Werte) abfragen, komme aber nicht dran:

    PHP
    $v = get_post_meta( $pics->ID, 'vote', true );

    Ich glaube, ich weiß nicht, was ich bei get_post_meta() als ID setzen soll. Wahrscheinlich stehe ich hier irgendwie auf dem Schlauch...

    Vielleicht kann ja jemand schnell meine Dunkelheit erhellen ... Danke schon einmal!

    Gruß,
    WpNull

    Zwar habe ich keine Ahnung - aber immerhin bin ich mir dessen bewusst !!!

    Einmal editiert, zuletzt von WpNull (21. Dezember 2012 um 18:43)

    • 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

Jetzt mitmachen!

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