Filter 'posts_where': Komplexer Filter mit Custom Fields möglich?
-
Hallo WordPress-Kenner,
ich bin mir sicher, dass es unter euch Spezialisten gibt, die mir bei meinem Anliegen weiterhelfen können.
Ich habe mir folgenden Filter für Titel und Inhalt der Beiträge erstellt (für eine Live-Suche mit jQuery):
// additional filter to query "title like %...% or content like %...%" add_filter( 'posts_where', 'theme_title_content_like_posts_where', 10, 2 ); function theme_title_content_like_posts_where( $where, &$wp_query ) { global $wpdb; if ( $post_title_content_like = $wp_query->get( 'post_title_content_like' ) ) { $where .= ' AND (' . $wpdb->posts . '.post_title LIKE \'%' . esc_sql( $wpdb->esc_like( $post_title_content_like ) ) . '%\' OR '. $wpdb->posts . '.post_content LIKE \'%' . esc_sql( $wpdb->esc_like( $post_title_content_like ) ) . '%\')'; } return $where; }
Das funktioniert wunderbar.
Nun folgende Frage: Kann ich (möglichst unter Erweiterung derselben Filterfunktion) den Filter noch wie folgt erweitern (hier mal zur Verständlichkeit in semantisch nachvollziehbarer Form aufgeschrieben)?
[…] OR benutzerdefiniertes Feld ‚author-name‘ LIKE %suchbegriff% OR Name des Autors (post_author) LIKE %suchbegriff%
Anders gefragt: Ist es möglich – und wenn ja: wie – den Filter ‚posts_where‘ so zu erweitern, dass man auch Werte aus anderen Datenbanktabellen berücksichtigen kann?
Danke bereits für die Hilfe!
Viele Grüße
joschi81
- Das Thema „Filter 'posts_where': Komplexer Filter mit Custom Fields möglich?“ ist für neue Antworten geschlossen.