info@netz-gaenger.de       📞 +49 151 / 28859057

WordPress Suche um Advanced Custom Fields erweitern

Wer ACF verwendet, der baut in seine WordPress Website extra Felder ein, die im Editor gefüllt und dann auf der Website an beliebiger Stelle ausgegeben werden können. Leider werden diese Felder nicht bei der WordPress Suche berücksichtigt. Mit dem folgenden Code kannst du deine Suche aufmotzen und auch auf Felder von Advanced Custom Fields erweitern.

So baust du ACF Felder in die WP Suche ein

Dieser folgende Code gehört in die functions.php deines Themes (oder Child-Themes). Speichern. Fertig. Mehr ist wirklich nicht zu tun.

// Make the search to index custom
/**
* Extend WordPress search to include custom fields
* http://adambalee.com
*
* Join posts and postmeta tables
* http://codex.wordpress.org/Plugin_API/Filter_Reference/posts_join
*/
function cf_search_join( $join ) {
global $wpdb;
if ( is_search() ) {
$join .=' LEFT JOIN '.$wpdb->postmeta. ' ON '. $wpdb->posts . '.ID = ' . $wpdb->postmeta . '.post_id ';
}
return $join;
}
add_filter('posts_join', 'cf_search_join' );

/**
* Modify the search query with posts_where
* http://codex.wordpress.org/Plugin_API/Filter_Reference/posts_where
*/
function cf_search_where( $where ) {
global $pagenow, $wpdb;
if ( is_search() ) {
$where = preg_replace(
"/\(\s*".$wpdb->posts.".post_title\s+LIKE\s*(\'[^\']+\')\s*\)/",
"(".$wpdb->posts.".post_title LIKE $1) OR (".$wpdb->postmeta.".meta_value LIKE $1)", $where );
}
return $where;
}
add_filter( 'posts_where', 'cf_search_where' );

/**
* Prevent duplicates
* http://codex.wordpress.org/Plugin_API/Filter_Reference/posts_distinct
*/
function cf_search_distinct( $where ) {
global $wpdb;
if ( is_search() ) {
return "DISTINCT";
}
return $where;
}
add_filter( 'posts_distinct', 'cf_search_distinct' );

Weitere Infos zum Code findest du auf der Homepage des Coders, dem ich sehr dankbar bin, dass er mir einen Shortcut zu einer optimierten Suche für eine meiner Websites geliefert hat.

Suchperformance nach Anpassung

Die Suchperformance hat bei mir ein klein wenig gelitten. Allerdings ist das nur dann relevant, wenn man wirklich viel Suchvolumen auf der Site hat. Dann müsste man den Code ggfs. noch auf Performance hin optimieren. Da die Suche aber ansonsten nicht die Performance der Site beeinflusst, ist das zu vernachlässigen.

Hat dir mein Beitrag geholfen?

Klicke auf die Sterne um zu bewerten!

Durchschnittliche Bewertung 4 / 5. Anzahl Bewertungen: 3

Letzte Version vom 5. Februar 2021 von Netzgänger

Beliebte Artikel

Wie gut ist HostPress, der spezialisierte WP Hoster?

Als WordPress-Entwickler habe ich viel mit Hostern zu tun. Hier liest du meine Erfahrungen zu HostPress und warum ich jetzt selber in einigen Projekten auf den Hosting-Anbieter setze.

Die besten Webhoster im Vergleich

Als WordPress Entwickler kenne ich alle guten Hoster. Hier zeige ich dir die besten WP Hoster und welcher für dich Sinn macht.

Muss WordPress gewartet werden?

Müssen WordPress Sites gewartet werden? Braucht es die regelmäßigen Updates oder kann man sich den Aufwand sparen? Das erkläre ich hier.

Die besten WP Security Plugins

WordPress solltest du immer absichern. Dafür gibt es diverse Plugins, die dich bei den Securitymaßnahmen unterstützen. Meine Empfehlungen.

Die besten Plugins für Auto-Übersetzung

Hier zeige ich dir 4 Plugins, die es ermöglichen WordPress automatisch zu übersetzen. Von wirklich gut bis wirklich schlecht ist alles dabei.

Die besten Plugins für Mehrsprachigkeit

Mit diesen 5 Plugins kannst du WordPress ganz einfach selber mehrsprachig einrichten. Multi-Language Fähigkeit in WP nachrüsten.

Bildnachweise: Freepik - Flaticon

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert