2012-04-04 4 views
0

Ich habe ein benutzerdefiniertes Feld namens "Bewertung" mit Wert von 1 bis 10. Was ich will ist, dass Sie wählen (wie klicken Sie auf eine Schaltfläche oder so ähnlich) um die Suchergebnisse in Abhängigkeit von der Bewertung zu sortieren.Wordpress benutzerdefinierte Feld - Suchergebnisse nach Wert sortiert

Ich habe diesen Code gefunden. Aber das Problem ist, dass Sie nicht wählen können, ob Sie den Post nach der Bewertung bestellen wollen oder nicht. Es bestellt automatisch die Posts. Dieser ist der Code, den ich Kopie haben und fügen Sie ihn in die functions.php

add_filter('posts_join', 'add_join'); 
function add_join($pjoin){ 
    global $wpdb; 
    $pjoin .= "LEFT JOIN (
    SELECT * 
    FROM $wpdb->postmeta 
    WHERE meta_key = 'rating') AS postmeta ON $wpdb->posts.ID = postmeta.post_id"; 

    return ($pjoin); 
} 

add_filter('posts_orderby', 'change_sortorder'); 
function change_sortorder($orderby){ 
    global $wpdb; 
    $orderby = "postmeta.meta_value+0 DESC"; 
    return $orderby; 
} 

Antwort

1

Wenn Sie diesen Code einfach hinzufügen können? Rating = DESC Ihre URL und Sie werden die Bewertungen in absteigender Reihenfolge sehen .

+0

Vielen Dank! Genau die Antwort, die ich suchte :) – Helena