X

Entfernen Sie unnötigen Code aus wp_head

WordPress enthält vieles über den wp_head() Hook, der in den meisten Themes enthalten ist. Die meisten dieser Dinge würde ich als unnötig betrachten. Ein paar zusätzliche Codezeilen in Ihrem Header werden Ihre Website wahrscheinlich nicht wesentlich verlangsamen, aber ich halte die Dinge gerne so sauber und effizient wie möglich.

In diesem kurzen Tipp-Beitrag werde ich erläutern, wie Sie Folgendes aus der Ausgabe über den wp_head Hook entfernen.

  • Really Simple Discovery (RSD) Link
  • Windows Live Writer Link
  • WordPress Generator Hinweis
  • Post relationale Links

Lesen Sie weiter für die Beschreibung jedes einzelnen Elements, um zu sehen, ob Sie es benötigen oder nicht, und wie Sie es entfernen können.

Really Simple Discovery

Dies ist der Code, der den folgenden Code in Ihrem Header anzeigt:

<link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://example.com/xmlrpc.php?rsd" />

Dies ist der von XML-RPC-Clients verwendete Erkennungsmechanismus. Wenn Sie keine Ahnung haben, was das bedeutet und/oder keine Dienste wie Flickr mit Ihrer WordPress-Website integrieren, ist es wahrscheinlich sicher, ihn mit dem folgenden Code in der Funktionen-Datei Ihres Themes zu entfernen.

remove_action('wp_head', 'rsd_link');

Windows Live Writer

Deshalb sehen Sie den folgenden Code in Ihrem Header.

<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://example.com/wp-includes/wlwmanifest.xml" />

Wenn Sie Windows Live Writer nicht verwenden, ist dieser Code für Sie völlig nutzlos und sollte entfernt werden.

remove_action('wp_head', 'wlwmanifest_link');

WordPress Generator

Dies zeigt Ihre WordPress-Versionsnummer in Ihrem Header an.

<meta name="generator" content="WordPress 2.8.4" />

Niemand muss wirklich die genaue Version von WordPress kennen, die Sie verwenden. Daher ist es sicher, diese Codezeile zu entfernen.

remove_action('wp_head', 'wp_generator');

Post relationale Links

Post relationale Links sind der Grund, warum diese Dinge auf verschiedenen Seiten angezeigt werden.

<link rel='index' title='Main Page' href='http://www.themelab.com' />
<link rel='start' title='Article in the distant past' href='http://www.themelab.com/hello-world/' />
<link rel='prev' title='The Post Before This One' href='http://www.themelab.com/post-before/' />
<link rel='next' title='The Post After This One' href='http://www.themelab.com/post-after/' />

Ich habe bisher keinen wirklichen Grund gefunden, diese beizubehalten. Einige Browser verwenden diesen Code möglicherweise zur Navigation auf Ihrer Website, obwohl Sie wahrscheinlich den gleichen Effekt mit einem gut gestalteten Theme erzielen können. Sie benötigen drei Zeilen, um sie alle zu entfernen.

remove_action('wp_head', 'start_post_rel_link');
remove_action('wp_head', 'index_rel_link');
remove_action('wp_head', 'adjacent_posts_rel_link');

Functions.php Vorlage

Zu Ihrer Bequemlichkeit finden Sie hier alle kombiniert zum einfachen Kopieren und Einfügen in die functions.php-Datei Ihres eigenen Themes.

<?php
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'wp_generator');
remove_action('wp_head', 'start_post_rel_link');
remove_action('wp_head', 'index_rel_link');
remove_action('wp_head', 'adjacent_posts_rel_link');
?>

Tatsächlich ist dies die gesamte functions.php-Datei, die ich in meinem neuen Tweet-Archiv-Theme verwende. Wenn Sie sich den Code ansehen, enthält der <head>-Tag nur drei Zeilen: die Meta-Zeichenkodierungsdeklaration, das Titel-Tag und den Stylesheet-Link.

Eine Anmerkung zu veröffentlichten Themes

Wenn Sie Themes zur Veröffentlichung entwickeln, seien Sie vorsichtig beim Entfernen einiger dieser Elemente, insbesondere der ersten beiden: XML-RPC und Windows Live Writer-Unterstützung.

Der Grund sollte ziemlich offensichtlich sein, da einige Ihrer Benutzer wahrscheinlich etwas wie Windows Live Writer verwenden und sich bei Ihnen melden, um Unterstützung zu bitten, wenn sie nicht verstehen, warum es mit Ihrem Theme nicht funktioniert.

Die anderen Elemente, der WordPress-Generator-Hinweis und die Post-Relations-Links, können wahrscheinlich in fast jeder Situation sicher entfernt werden.

Fazit

Wie ich in der Einleitung sagte, ist es keine *riesige* Sache, wenn Sie diese nicht entfernen, und ich würde dies nicht als "Muss" bei jeder neuen WordPress-Website bezeichnen, die Sie entwickeln. Wenn Sie wie ich sind und keine nutzlosen Codezeilen mögen, werden Sie es wahrscheinlich trotzdem tun wollen, nur um die Dinge so sauber wie möglich am Laufen zu halten.

Können Sie weitere Funktionen nennen, die Sie zum Entfernen von Zeilen unnötigen WordPress-Codes verwenden? Lassen Sie es mich in den Kommentaren wissen.

Kommentare   Hinterlasse eine Antwort

  1. Hallo, ich brauche Hilfe bei WordPress. Nachdem ich die Seite in WP erstellt hatte, sah ich im Code (Quellcode), dass der Page Builder mit jedem Klassennamen seinen Namen hinzugefügt hat, was mich verwirrt. Zum Beispiel verwende ich ELEMENTOR und wenn ich eine Seite erstelle, sehe ich im Quellcode den Klassennamen „.elementor-column-wrap“… Jetzt ist das Problem, dass ich die Elementor-Wörter vor dem Klassennamen entfernen möchte. Ich möchte den Klassennamen so einfach wie möglich halten. Kein Page-Builder-Name sollte dort sein… Bitte lassen Sie es mich wissen.

    1. Sie können es nicht entfernen, sonst beschädigen Sie Elementor

  2. Hallo,

    Bitte sagen Sie mir, wo ich diesen Code in functions.php einfügen soll?
    Einige Blogs sagten, er sollte am Ende eingefügt werden, andere Blogs, dass er am Anfang eingefügt werden kann?

    Vielen Dank im Voraus

    1. Die Position spielt überhaupt keine Rolle. Sie können ihn am Anfang oder am Ende hinzufügen.

  3. Wie kann ich aus wp_head() entfernen

  4. Hallo,
    Danke für diesen Beitrag, aber bitte fügen Sie auch Code hinzu, um das Emoji-Skript zu entfernen.
    Mit freundlichen Grüßen

      1. Vielen Dank für Ihre Hilfe. Ich möchte Ihnen nur sagen, dass meine Website dank des oben genannten Codes im Beitrag und des Emoji-Entfernungscodes eine Geschwindigkeit von 99 auf Mobilgeräten und 98 auf Desktops im Google Page Speed Test erreicht hat.

        1. Ich freue mich, dass es geholfen hat!

  5. Ich weiß nicht, warum Theme-Entwickler diese überhaupt standardmäßig in ihre Themes einbauen.

    Ich habe ein sehr einfaches Theme verwendet und es an meine Website angepasst, aber all dieser Müll war immer noch in meinem Header (zusammen mit anderem Müll, den WordPress automatisch lädt).

    Danke für diesen Beitrag, ich fand ihn sehr nützlich.

  6. Habe diesen Beitrag gerade über adjacent_posts_rel_link_wp_head gefunden – Das könnte für Sie und Ihr Publikum funktionieren, daher halte ich es für relevant… ich versuche nicht zu spammen, aber…
    Ich habe eine Handvoll Funktionen und Bereinigungsarbeiten hinzugefügt, von denen ich hoffe, dass sie für jedermanns Installationen funktionieren, um sie zu bereinigen und etwas von dem Müll wie die von Ihnen hier geposteten wp_head-Sachen loszuwerden.

    Das Plugin, mangels eines besseren Namens, ist Selfish Fresh Start… egoistisch, weil es die Dinge sind, die meiner Meinung nach aus jeder Installation entfernt werden sollten, lol.

    http://wordpress.org/extend/plugins/selfish-fresh-start/

  7. Ja, es hat wp_head verwendet. Muss ich mir darüber Sorgen machen?

  8. Ich habe keines davon in meinem Header, außer dem WordPress-Generator – in meinem Theme befindet sich dies in einem Kommentar mit „Bitte für Statistiken lassen“

    Worum geht es dabei?

    1. Verwendet Ihr Theme den wp_head Hook? Es klingt, als ob dieser „Bitte für Statistiken lassen“-Teil fest in die header.php-Datei Ihres Themes einprogrammiert ist.

  9. Großartige Arbeit, obwohl ich hinzufügen sollte, dass es in WP 3.0 eine kleine Änderung bei adjacent_posts_rel_link gab. Es ist jetzt adjacent_posts_rel_link_wp_head (bin mir nicht sicher, warum es sich geändert hat).

    Ich habe das herausgefunden, indem ich zu /wp-includes/default-filters.php gegangen bin und das, was im add_action-Bereich aufgelistet war, rückgängig gemacht habe.

    Irgendeine Idee, warum sich das geändert haben könnte?

    1. Wir haben den Namen geändert, weil wir die Funktionsweise auf eine Weise geändert (verbessert) haben, die nicht abwärtskompatibel ist. Für den Kern ist das in Ordnung, da es eine Verbesserung ist, aber wenn ein Plugin das ursprüngliche Plugin so verwendet hätte, wie es der Kern tut, wollen wir diese Funktionalität nicht ändern.

      Die neue Funktion ruft tatsächlich nur die alte Funktion auf — http://core.trac.wordpress.org/ticket/10867

  10. Hallo. Wissen Sie, wie ich jQuery automatisch aufrufen kann? Offensichtlich muss es im Admin-Bereich aufgerufen werden, aber auf der Client-Seite verwende ich Mootools, daher möchte ich nicht, dass zwei JS-Bibliotheken aufgerufen werden.

    Danke
    Tom

  11. Ausgezeichneter Beitrag Leland! Die relationalen Links haben mich immer ein wenig gestört, aber ich habe nie nachgeforscht, wie man sie entfernt.

    Ich denke, es lohnt sich auch zu erwähnen, dass viel von dem Code, der von Plugins hinzugefügt wird, ebenfalls entfernt werden kann: http://wptheming.com/2009/12/optimize-plug-in-script-wordpress/

    1. Hallo Devin, danke für den Kommentar. Das ist ein guter Punkt bezüglich des Plugin-Codes. Besonders wenn Plugins wie Contact Form 7 automatisch CSS und JS auf jeder Seite laden, obwohl man es normalerweise nur auf einer Seite (oder auf jeder Seite, auf der tatsächlich ein Kontaktformular vorhanden ist) benötigt.

Kommentar hinzufügen

Wir freuen uns, dass Sie einen Kommentar hinterlassen haben. Bitte beachten Sie, dass alle Kommentare gemäß unserer Datenschutzrichtlinie moderiert werden und alle Links nofollow sind. Verwenden Sie KEINE Schlüsselwörter im Namensfeld. Lassen Sie uns ein persönliches und bedeutungsvolles Gespräch führen.

WordPress Launch Checkliste

Die ultimative Checkliste für den Start von WordPress

Wir haben alle wichtigen Checklistenpunkte für den Start Ihrer nächsten WordPress-Website in einem praktischen E-Book zusammengefasst.
Ja, senden Sie mir das kostenlose E-Book!