Bitte stimmen Sie über die Frage und alle Antworten ab, die Sie nützlich finden, indem Sie auf den Pfeil nach oben links neben der Frage oder Antwort klicken.
Wie bei vielen anderen, die sich diesen Beitrag gerade ansehen, habe ich verschiedene Blogs, Foren und Diskussionsgruppen gelesen, um meine WordPress-Kenntnisse zu verbessern. In den letzten 12 Monaten hatte ich die Mission, die Verwendung von Plugins durch Hinzufügen von Code zu meiner functions.php
Datei zu ersetzen . Obwohl ich völlig einverstanden bin, dass Plugins in vielen Situationen sehr nützlich sind, hat meine Erfahrung gezeigt, dass in 90% der Anwendungsfälle, obwohl ein Plugin vorhanden sein könnte, die tatsächliche Verwendung zu unnötigen Komplikationen und Kompatibilitätsproblemen führen kann. Außerdem haben solche Plugins in vielen Fällen Menüs und andere Admin-Elemente hinzugefügt, die ich nicht möchte oder benötige.
In den meisten Fällen habe ich festgestellt, dass ich durch die Analyse des Plugin-Codes den gewünschten Code herausnehmen und in meinen Code einbauen konnte functions.php
. Dadurch erhielt ich genau die Funktionalität, die ich benötigte, ohne unnötige Elemente einbeziehen zu müssen.
Der Zweck dieses Beitrags ist also mein Versuch, Sie, den Leser / Administrator / Entwickler, dazu zu bewegen, mir und anderen hier Codebits mitzuteilen, die Sie nützlich finden und die Ihrer Themendatei hinzugefügt haben function.php
, um WordPress zu erweitern oder zu verbessern, ohne a zu verwenden Plugin.
Wenn Sie hier eine Antwort einreichen, geben Sie bitte jedem Code-Bit einen Titel, lassen Sie uns wissen, mit welcher Version von WordPress Sie kompatibel sind, fügen Sie eine Beschreibung hinzu, die Ihrer Meinung nach die Funktion am besten beschreibt, und fügen Sie (falls zutreffend) einen Link zum Original hinzu Plugin oder Quelle, in der Sie die Informationen gefunden haben.
Ich freue mich auf alle Ihre Antworten und werde natürlich meine eigenen neuen Funde hinzufügen, wann immer ich sie finde.
Antworten:
Aktiviere die versteckte Admin-Funktion, um ALLE Site-Einstellungen anzuzeigen
Getestet auf: Wordpress 3.1 RC3
Dieses kleine Stück Code macht etwas ziemlich Cooles. Es wird Ihrem Einstellungsmenü eine zusätzliche Option mit einem Link zu "Alle Einstellungen" hinzugefügt, die Ihnen eine vollständige Liste aller Einstellungen zeigt, die Sie in Ihrer Datenbank in Bezug auf Ihre WordPress-Site vorgenommen haben. Durch den folgenden Code wird dieser Link nur für einen Administrator sichtbar und für alle anderen Benutzer ausgeblendet.
quelle
Ändern Sie den Link zum Login-Logo und zur Bild-URL
Getestet auf: WordPress 3.0.1
Mit diesem Code können Sie auf einfache Weise das Logo der WordPress-Anmeldeseite sowie den href-Link und den Titel des Logos ändern.
BEARBEITEN: Wenn Sie das Site-Logo als Ersatz für das Anmeldelogo verwenden möchten, können Sie die folgenden Informationen dynamisch abrufen (getestet in WP3.5 ):
quelle
Fügen Sie benutzerdefinierte Beitragstypen in die Suchergebnisse ein.
Fügen Sie Ihre benutzerdefinierten Beitragstypen standardmäßig zum RSS-Hauptfeed Ihrer Website hinzu.
Fügen Sie benutzerdefinierte Beitragstypen in das Admin-Dashboard-Widget "Right Now" ein
Dies schließt Ihre benutzerdefinierten Beitragstypen und die Anzahl der Beiträge für jeden Typ im Dashboard-Widget "Right Now" ein.
quelle
exclude_from_search
param vonregister_post_type
...Entfernen Sie die Update-Benachrichtigung für alle Benutzer mit Ausnahme von ADMIN-Benutzer
Getestet auf: Wordpress 3.0.1
Dieser Code stellt sicher, dass keine anderen Benutzer als "admin" von WordPress benachrichtigt werden, wenn Updates verfügbar sind.
Die Version wurde so geändert, dass nur Update-Benachrichtigungen für Administratorbenutzer angezeigt werden (im Gegensatz zum Benutzer "admin"):
quelle
Laden von jQuery aus dem Google CDN
Getestet auf: Wordpress 3.0.1
Entfernen Sie die WordPress-Versionsinformationen für Sicherheit
Getestet auf: Wordpress 3.0.1
Hinzufügen von Spam und Löschen von Links zu Kommentaren im Frontend
Getestet auf: Wordpress 3.0.1
Dies erleichtert das Verwalten von Kommentaren im Frontend, indem Spam hinzugefügt und Links gelöscht werden. **
Verzögern Sie die Veröffentlichung im RSS-Feed
Getestet auf: Wordpress 3.0.1
Schließlich möchte ich das Posten in meinen RSS-Feeds um 10-15 Minuten verschieben, da ich in meinem Text immer mindestens ein paar Fehler finde. Andere Verwendungszwecke sind, wenn Sie möchten, dass Inhalte für einen Tag oder eine Woche exklusiv für Ihre Website sind, bevor sie an Ihre RSS-Reader gesendet werden.
quelle
remove_action('wp_head', 'wp_generator');
Stellen Sie eine maximale Anzahl von Post-Revisionen ein, um ein Aufblähen der Datenbank zu vermeiden.
Getestet auf: Wordpress 3.0.1
Die Standardeinstellung ist unendlich. Dadurch werden nur die letzten 5 Änderungen gespeichert:
FWIW gibt es eine Menge großartiger Ideen für CONSTANTS, die auf der Codex-Seite Editieren von wp-config.php eingestellt werden können .
quelle
Wordpress Profiling-Tools
Ich füge Profiling-Tools gerne in einer separaten Datei hinzu, die ich dann bei Bedarf aus functions.php hinzufüge:
quelle
Scharfzeichnen von Bildern mit geänderter Größe (nur JPG)
Diese Funktion schärft verkleinerte JPG-Bilder. Ein Beispiel für den Unterschied:
quelle
Entfernen Sie die Standard-Wordpress-Metaboxen
Getestet auf: Wordpress 3.0.1
Mit diesem Code können Sie bestimmte Meta-Boxen entfernen, die WordPress standardmäßig zu den Standardbildschirmen "Beitrag hinzufügen / bearbeiten" und "Seite hinzufügen / bearbeiten" hinzufügt.
quelle
Entfernen Sie "Wordpress" zum "WordPress" Filter
Getestet auf: Wordpress 3.0.1
Mit WordPress Version 3.0 wurde ein Filter hinzugefügt, der automatisch alle Instanzen von "WordPress" (ohne Großbuchstaben P) in "WordPress" (mit Großbuchstaben P) in Post-Inhalten, Post-Titeln und Kommentartexten konvertiert. Einige Leute sehen dies als aufdringlich an, ich muss nur von Zeit zu Zeit WordPress falsch schreiben und fand den Filter etwas nervig.
quelle
11
als dritten Parameter hinzufügen müssen , um ihn zu entfernen.Passen Sie das Dashboard an
Entfernen Sie diese Dashboard-Widgets ...
Hinzufügen eines benutzerdefinierten Widgets mit dem Namen "Hilfe und Support"
Dies ist der Inhalt für Ihr benutzerdefiniertes Widget
quelle
Benutzerdefinierte Benutzerprofilfelder hinzufügen
Fügen Sie den folgenden Code in Ihre functions.php-Datei ein, um benutzerdefinierte Benutzerprofilfelder hinzuzufügen. Bearbeiten oder fügen Sie nach Belieben Linien hinzu.
Denken Sie daran, die Zeile nicht zu entfernen: return $ contactmethods; Andernfalls funktioniert das nicht.
Um benutzerdefinierte Felder anzuzeigen, können Sie eine der beiden unten aufgeführten Methoden verwenden.
Option 1:
Option 2:
quelle
Passen Sie die Reihenfolge des Admin-Menüs an
getestet auf: Wordpress 3.0.1
Mit diesem Code können Sie die Reihenfolge der Elemente im Admin-Menü neu organisieren. Alles, was Sie tun müssen, ist auf einen vorhandenen Link im Admin-Menü zu klicken und alles vor der / wp-admin / URL zu kopieren. Die folgende Reihenfolge gibt die Reihenfolge an, in der das neue Admin-Menü angezeigt wird.
quelle
custom_menu_order
? Ich konnte keinen finden ...Funktion zum Ändern der Länge des Ausschnitts
Getestet auf: Wordpress 3.0.1
Standardmäßig sind alle Auszüge auf 55 Wörter begrenzt. Mit dem folgenden Code können Sie diese Standardeinstellungen überschreiben:
In diesem Beispiel wird die Auszugslänge auf 100 Wörter geändert, Sie können sie jedoch auf dieselbe Weise in einen beliebigen Wert ändern.
quelle
excerpt_length
Haken) Kappe durch Worte .Hinzufügen von Miniaturansichten in der Liste "Beiträge / Seiten verwalten"
Sie können dies zu Ihren Funktionen hinzufügen, um in der Liste "Beitrag verwalten / bearbeiten" und "Seiten" eine neue Spalte mit der Vorschau der Miniaturansichten anzuzeigen.
quelle
Entfernen Sie Pings in Ihrem eigenen Blog
Getestet auf: Wordpress 3.0.1
quelle
Aktivieren Sie die GZIP-Ausgabekomprimierung
Normalerweise sollte der Server so eingerichtet sein, dass dies automatisch erfolgt, aber viele gemeinsam genutzte Hosts tun dies nicht (wahrscheinlich, um die Bandbreitennutzung des Clients zu erhöhen).
quelle
DB-Abfragen, Zeitaufwand und Speicherverbrauch anzeigen
Getestet auf: Wordpress 3.0.1
Dann folgt dieser Code unter dem obigen Code, der den obigen Code automatisch in die Fußzeile Ihrer öffentlichen Website einfügt (stellen Sie sicher, dass Ihr Theme wp_footer aufruft):
Kann mehrfach aufgerufen werden.
quelle
memory_get_usage()
Heben Sie die Registrierung der WP-Standardwidgets auf
Getestet auf: WordPress 3.0.1
quelle
Automatisches Extrahieren des ersten Bildes aus dem Beitragsinhalt
Getestet auf: Wordpress 3.0.1
Mit diesem Code wird automatisch das erste Bild extrahiert, das einem Beitrag zugeordnet ist, und Sie können es durch Aufrufen der Funktion getImage anzeigen / verwenden.
quelle
Geben Sie in der Kopfzeile aus, welche Designvorlagendatei ein Beitrag / eine Seite verwendet
Kürzen Sie die Standard-DIV-Ausgabe, wenn Ihr Thema post_class verwendet.
Wenn Ihr Thema etwas wie verwendet
Sie können verrückte lange Divs in Ihrer Quelle haben, die so oder noch länger aussehen könnten:
Dies kann Ihre Quelle wirklich überladen und in den meisten Fällen eher unnötig erscheinen. 3-4 tief zu gehen ist gut genug.
Für das obere Beispiel können wir die Ausgabe wie folgt aufteilen:
Dies schneidet die Ausgabe so, dass sie nur die ersten 5 Werte enthält. Das obige Beispiel lautet also:
In Kategoriearchiven werden alle Beiträge unabhängig vom Beitragstyp angezeigt: Geeignet für benutzerdefinierte Beitragstypen
Entfernen Sie unerwünschte Dashboard-Elemente
Dies wurde bereits gepostet, hatte aber nicht die vollständige Liste der Elemente. Besonders die nervigen "eingehenden Links!"
Entfernen von "Read More" -Seitensprüngen **
kehren Sie stattdessen zum Seitenanfang zurück. Wenn Sie auf "read more" klicken, springt das Programm zu der Stelle auf der Seite, die ärgerlich sein kann. Dadurch wird die Seite normal geladen und es wird kein Sprung ausgeführt.
Schränken Sie die ADMIN-Menüelemente basierend auf dem Benutzernamen ein . Ersetzen Sie den Benutzernamen durch den Namen eines tatsächlichen Benutzers.
// alternativ kannst du auch if ($ current_user-> user_login! = 'admin') verwenden, wahrscheinlich nützlicher
Gestalten Sie die Tag-Cloud
Vollständige Referenz der Optionen hier (es gibt viele!) Http://codex.wordpress.org/Function_Reference/wp_tag_cloud
Standard-Timer für RSS-Widget-Updates ändern
(Standard sind 6 oder 12 Stunden, die ich vergessen habe (1800 = 30 Minuten).
quelle
Hinweis zur Plugin-Aktualisierung NUR für INAKTIVE Plugins entfernen
quelle
Überflüssige Informationen und HTML im
<head>
Tag entfernenquelle
Aktivieren Sie das Debuggen und Protokollieren von Fehlern für die Verwendung auf Live-Sites
Dies ist ein Teil des Codes, den ich geschrieben habe, um die WP_DEBUG-Konstanten zu verwenden, die normalerweise standardmäßig deaktiviert sind. Nun, ich habe eine Möglichkeit geschaffen, nicht nur WP_DEBUG zu aktivieren, damit Sie es auf einer Live-Site ohne negative Nebenwirkungen verwenden können, sondern auch die anderen Debug-Konstanten, um die Anzeige von Fehlern zu erzwingen und eine Protokolldatei von zu erstellen die Fehler und Hinweise im Verzeichnis / wp-content.
Legen Sie diesen Code in Ihrer wp-config.php-Datei ab (NACH DEM SPEICHERN EINES SICHERUNGSFALLS) und übergeben Sie am Ende jeder URL auf Ihrer Site die Parameter? Debug = 1, 2 oder 3.
? debug = 1 = zeigt alle Fehler / Hinweise an? debug = 2 = erzwingt deren Anzeige? debug = 3 = erstellt eine debug.log-Datei mit allen Fehlern in / wp-content dir.
Auf den Gastbeitrag, den ich bei Interesse für Comluv geschrieben habe, gehe ich genauer ein: http://comluv.com/dev/enable-debugging-and-logging-for-live-site-usage/
Ich arbeite immer noch an einer Möglichkeit, dies entweder passwortgeschützt zu machen oder es vorzugsweise irgendwie funktionieren zu lassen, wenn (current_user_can ('manage_themes') und is_logged_in ().
Aber das ist, wo es viel schwieriger wird.
quelle
Dynamische Titel automatisch zu öffentlichen Seiten hinzufügen
Getestet auf: Wordpress 3.0.1
Wenn Sie den folgenden Code verwenden, werden automatisch dynamische Seitentitel erstellt, die auf den öffentlich angezeigten Seiten / Posts basieren.
quelle
Neue Rollen und Funktionen - Nur einmal ausführen!
Ich halte diese zur Hand , das ist der richtige Weg, um sie ohne Plugin zu machen. Sie legen ein einzelnes Feld (prefix_user_roles) in der Optionsdatenbank fest, und Sie benötigen kein Plugin, um sie festzulegen. Auf der Codex-Seite finden Sie eine Liste der verfügbaren Funktionen und Beschreibungen ihrer Funktionen. Sie müssen nur einen dieser Blöcke auskommentieren, eine Seite laden und sie dann erneut kommentieren! Hier erstelle ich eine Rolle mit den Funktionen, die ich benötige:
Es ist manchmal praktisch, eine vorhandene Rolle hinzuzufügen / zu entfernen, anstatt eine Rolle zu entfernen und erneut hinzuzufügen. Auch hier müssen Sie nur das Kommentarzeichen entfernen, eine Seite neu laden und sie dann erneut kommentieren. Dadurch wird die Rolle / Funktion ordnungsgemäß in der Optionstabelle gespeichert. (Auf diese Weise können Sie als Entwickler diese steuern und den Overhead der umfangreichen Plugins entfernen, die das Gleiche tun.) Hier ändere ich die Autorenrolle, um die veröffentlichten Beiträge zu löschen (Standardeinstellung), ihnen jedoch die Möglichkeit zum Bearbeiten ihre veröffentlichten Beiträge (was für diese Rolle standardmäßig nicht möglich ist) - mit * add_cap * oder * remove_cap *.
Ich behalte eine Tabelle mit dem Raster auf der Codex-Seite für Sites, die auf diese Weise geändert werden, damit ich mich erinnern kann, wie die Dinge eingestellt sind, obwohl der auskommentierte Code in Ihrer functions.php-Datei funktionieren wird. Lassen Sie diese Beispiele nicht unkommentiert, da sie sonst bei jedem Laden der Seite in die Datenbank geschrieben werden!
quelle
Benutzerdefinierte Wordpress-Admin-Fußzeile
Ich benutze dies für Client-Sites als einfachen Bezugspunkt, um mich als Entwickler zu kontaktieren.
quelle
Aktivieren Sie Shortcodes in Widgets
quelle
Funktion zum Deaktivieren von RSS-Feeds
Getestet auf: Wordpress 3.0.1
Sie können RSS-Feeds deaktivieren, wenn Sie Ihre Wordpress-basierte Website als statisch beibehalten möchten.
Sie können diese Funktion verwenden:
quelle
Ändere die "Howdy" Nachricht in "Welcome"
Mit dieser Funktion können Sie die "Howdy" -Nachricht oben rechts in Ihrem Admin-Bereich anpassen.
Diese Funktion verwendet JQuery, um die Meldung "Howdy" in "Welcome" zu ändern.
PHP-Version mit
gettext
Filter:quelle