Sidebar
ein-/ausblenden

WordPress Suche deaktivieren

Plugin für WordPress SEO

Anzeige

Nicht immer ist die Suche von WordPress erwünscht. Die eine oder andere Anwendung mit WordPress benötigt die Funktion nicht, auch wenn sie sicher aus meiner Sicht einen Mehrwert darstellt. In einigen Anforderungen soll sie trotzdem nicht präsent sein und so habe ich sie mit Zugriff auf zwei Hooks deaktiviert. Vorerst kann ich keine andere Stelle erkennen, wo man auf sie zugreifen könnte und in meinen Anwendungen klappt es so problemlos.

Der zweite Aufruf des Hook get_search_form ist eigentlich nur, um die Suche aus dem Frontend zu nehmen, daher sollte man die beiden Hooks nur starten, wenn man nicht im Admin ist: if ( !is_admin() ) .

Setzt man die Variable $error auf true, dann wird auf die Fehlerseite des Themes weiter geleitet, wenn nicht, dann bleibt man auf der Seite, von der aus eventuell die Suche gestartet wurde.


function fb_filter_query( $query, $error = true ) {

	if ( is_search() ) {
		$query->is_search = false;
		$query->query_vars[s] = false;
		$query->query[s] = false;

		// to error
		if ( $error == true )
			$query->is_404 = true;
	}
}

add_action( 'parse_query', 'fb_filter_query' );
add_filter( 'get_search_form', create_function( '$a', "return null;" ) );

Ergänzungen, Kritik oder Verbesserungen - her damit. Das Kommentarfeld steht wie immer offen und die Lösung freut sich, wenn sie verfeinert wird.

13 Kommentare zu „WordPress Suche deaktivieren“

  1. 1
    Kommentar von ^Nicki^

    Super, passt, danke!

  2. 2
    Kommentar von Tobias

    Hatte mich immer schon gefragt, wie man das machen könnte. Das Suchformular rausnehmen ist eine Sache, aber es richtig zu deaktivieren eine andere.

  3. 3
    Kommentar von Jared

    Hallo Frank,

    super Tip ;) mehr muss man dazu nicht sagen!

  4. 4
    Kommentar von FuNKeR

    Das klingt praktisch für die Gästehaus-Seite, die ich betreue. Das ist eine recht statische Seite, wo eigentlich nie neue Inhalte kommen und die auch nur ~ fünf Seiten umfasst. Da ist eine Suche nicht ganz so sinnvoll.

    Wenn ich damit die Ladezeit evtl. ein wenig herabsetzen kann, kommt mir das natürlich sehr zu gute.

    Hast du sonst noch eine Idee, was man deaktivieren kann, wenn man WP als Mini-CMS und nur mit Pages nutzt? Mir fielen da z.B. RSS-Feeds ein. Diese hab ich einfach aus dem Header genommen, damit sie nicht mehr angezeigt werden. Erstellt werden sie dadurch aber trotzdem noch, oder?

    Und kann man Plugins nur auf bestimmten Seiten laden lassen ohne das Plugin selbst zu verändern? Google Maps muss beispielsweise nur auf einer der Seiten geladen werden.

  5. 5
    Kommentar von FuNKeR

    Sorry, hab grade einen Beitrag gefunden, wo du genau das mit den RSS-Feeds erklärst. Danke dafür.

  6. 6
    Kommentar von Ahmet Topal

    Find ich auch, dass kann für manche Seiten (Portfolio ohne Blog) interessant sein, finde es super...

  7. 7
    Kommentar von Claudia

    Warum nicht einfach das Suchfeld aus der Oberfläche (den Templates) raus nehmen??

  8. 8
    Kommentar von Frank Bültge

    @Claudia: weil die Suche dann trotzdem aktiv ist und genutzt werden kann, so zum Beispiel durch Google und Nutzer, die das System kennen.

  9. 9
    Kommentar von Brasilien

    PERFEKT!!! Danke

  10. 10
    Kommentar von Frederik

    @FuNKeR: Wenn damit die Ladezeit effektiv verringert wird: Super! Ansonsten ist es doch nicht nötig, oder?

    @Frank: Inwiefern nutzt denn zum Beispiel Google die in WordPress integrierte Suche? Davon have ich noch nie gehört. Klingt jedoch interessant, hast du dafür weitere Infos?

  11. 11
    Kommentar von Frank Bültge

    @Frederik: WordPress nutzt Google nicht innerhalb des Systems, man kann es aber selber in das Blog integrieren, siehe Artikel.

  12. 12
    Kommentar von andre

    Danke, sowas hab ich gesucht :-)

  13. 13
    Kommentar von Matthias Essen

    Danke für die Anleitung. Ich habs gerade für meine Seite umgesetzt. Bei Google Analytics hatte ich gesehen, dass dort auch ohne Suchfeld auf die Suche zugegriffen wurde und auch für Crawler wollte ich den Zugang sperren, damit die nicht irgendetwas ungewollt indizieren.

Kommentar schreiben

Kommentarregeln: Bleib cool, kritisch ist in Ordnung, aber wenn du unhöflich bist, dann lösche ich deinen Kommentar. Bitte benutze deinen persönlichen Namen oder Initialen und nicht den Namen eines Unternehmens, dies würde als Spam gewertet und wird gelöscht. Der Zusammenhang zwischen Namen und URL sollte nicht offensichtlich auf Spam hindeuten! ♥ Ansonsten, vielen Dank für den Kommentar und viel Spaß mit meinem Blog.

Kommentar-Hilfe

händischer Spam:
Beachte die Kommentarregeln, jede Form von versuchtem Spam wird gelöscht. Warum und wieso steht in einem meiner Beiträge.

Bezug auf Textstellen:
Du kannst direkt bezug auf Textstellen im Beitrag nehmen. Dazu muss lediglich der Bereich im Artikel markiert werden; daraufhin erscheint ein Button, der den markierten Text in das Kommentarfeld übernimmt und als Zitat auszeichnet. Die Funktion ist nur bei aktivem JavaScript nutzbar.

xHTML:
Du kannst folgende Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <blockquote cite=""> <code> <pre> <em> <strong> <strike> <ul> <ul> <li>

Achte darauf, wenn du Code im Kommentar hinterlegen willst, dann muss der Code maskiert sein. Dann wird er nicht interpretiert. Der Code muss mit Hilfe von HTML-Entities dargestellt werden, d.h. dass man z.B. < als &lt; und > als &gt; einfügt.

E-Mail-Benachrichtigung bei neuen Kommentaren ?
Wenn der Haken in der Checkbox gesetzt ist, dann wirst du über neue Kommentare vie E-Mail informiert. Der Versand erfolgt nur, wenn du die URL in der Bestätigungs-E-Mail genutzt hast oder schon Abonnent hier im Blog bist.

Kommentar erscheint nicht:
Alle Kommentare werden manuell geprüft, freigegeben und nach Möglichkeit beantwortet. Bitte um etwas Geduld und Nachsicht.

Identifikationsbilder (Avatare):
Auf Gravatar.com kann man sich mit seiner E-Mail-Adresse registrieren und ein Bild hochladen, dann erscheint dieses Gravatar hier und in vielen weiteren Blogs.

Spamschutz:
Das Kommentarformular ist mit einem Spamschutz ausgerüstet. Solltest du diesen Artikel ohne JavaScript besuchen und kommentieren wollen, so muss du die Frage beantworten und das jeweilige Wort in das Textfeld eingeben.