nächster und vorheriger Postlink alphabetisch geordnet

Ich habe einen Ausschnitt gefunden , der alle Beiträge alphabetisch sortiert. Ich frage mich, ob es einen Weg gibt, es nur für einen Post-Typ funktionieren zu lassen? Ich habe einige benutzerdefinierte Post-Typ auf meiner Website, und ich möchte eine von ihnen alphabetisch sortiert werden, aber der Rest nach Datum.

Ich habe filter_next_post_sort und fiter_previous_post_sort geändert:

 function filter_next_post_sort($sort) { if (get_post_type($post) == 'MyCustomPostType') { $sort = "ORDER BY p.post_title ASC LIMIT 1"; } else{ $sort = "ORDER BY p.post_date ASC LIMIT 1"; } return $sort; } 

Ich hoffe, es ist so gut. Aber ich muss filter_next_post_where und filter_previous_post_where ändern, aber ich finde den richtigen Weg nicht.

Jetzt sehen sie so aus:

 function filter_next_post_where($where) { global $post, $wpdb; return $wpdb->prepare("WHERE p.post_title > '%s' AND p.post_type = '". get_post_type($post)."' AND p.post_status = 'publish'",$post->post_title); } function filter_previous_post_where($where) { global $post, $wpdb; return $wpdb->prepare("WHERE p.post_title post_title); } 

Irgendwelche Vorschläge, was zu ändern? Vielen Dank!

EDITED: Ich habe das versucht, aber es funktioniert nicht:

 function filter_next_post_where($where) { global $post, $wpdb; if (get_post_type($post) == 'szinesz') { return $wpdb->prepare("WHERE p.post_title > '%s' AND p.post_type = '". get_post_type($post)."' AND p.post_status = 'publish'",$post->post_title); } else{ return $wpdb->prepare("WHERE p.post_date > '%s' AND p.post_type = '". get_post_type($post)."' AND p.post_status = 'publish'",$post->post_title); } } 

Oh, und ich benutze WP 4.1.1.

Solutions Collecting From Web of "nächster und vorheriger Postlink alphabetisch geordnet"

Finde die Lösung: Das Loch-Snippet sieht so aus:

 function filter_next_post_sort($sort) { if (get_post_type($post) == 'MyCustomPostType') { $sort = "ORDER BY p.post_title ASC LIMIT 1"; } else{ $sort = "ORDER BY p.post_date ASC LIMIT 1"; } return $sort; } function filter_next_post_where($where) { global $post, $wpdb; if (get_post_type($post) == 'MyCustomPostType') { return $wpdb->prepare("WHERE p.post_title > '%s' AND p.post_type = '". get_post_type($post)."' AND p.post_status = 'publish'",$post->post_title); } else{ return $wpdb->prepare( "WHERE p.post_date > '%s' AND p.post_type = '". get_post_type($post)."' AND p.post_status = 'publish'", $post->post_date, $post->post_type ); } } function filter_previous_post_sort($sort) { if (get_post_type($post) == 'MyCustomPostType') { $sort = "ORDER BY p.post_title DESC LIMIT 1"; } else{ $sort = "ORDER BY p.post_date DESC LIMIT 1"; } return $sort; } function filter_previous_post_where($where) { global $post, $wpdb; if (get_post_type($post) == 'MyCustomPostType') { return $wpdb->prepare("WHERE p.post_title < '%s' AND p.post_type = '". get_post_type($post)."' AND p.post_status = 'publish'",$post->post_title); } else{ return $wpdb->prepare( "WHERE p.post_date < '%s' AND p.post_type = '". get_post_type($post)."' AND p.post_status = 'publish'", $post->post_date, $post->post_type ); } } add_filter('get_next_post_sort', 'filter_next_post_sort'); add_filter('get_next_post_where', 'filter_next_post_where'); add_filter('get_previous_post_sort', 'filter_previous_post_sort'); add_filter('get_previous_post_where', 'filter_previous_post_where');