Es gibt viele Faktoren, die die Leistung auf Ihrer WordPress-Site beeinflussen, und einer der Tricks, den "Experten" Ihnen oft sagen werden, ist das Vermeiden von Plugins. Sie werden Ihnen sagen, dass es besser ist, Funktionalität in Ihrem Design zu platzieren, anstatt ein Plugin zu aktivieren. Ist das wahr?
Wenn es um die Leistung Ihrer WordPress-Site geht, gibt es viele Faktoren, die das Gesamtergebnis beeinflussen. Diese Faktoren umfassen, wie gut Ihr Theme geschrieben ist, wie viele Bilder und andere Ressourcen geladen werden müssen, wie gut Ihre Site zwischengespeichert wird, die Qualität Ihrer aktivierten Plugins und viele mehr. Zwei Faktoren, die keinen Einfluss auf das Leistungsniveau Ihrer Website haben, sind die Anzahl der Plugins (ja, ich bin zu 100% seriös) und die Frage, ob ein Teil der Funktionalität als Plugin oder Teil Ihres Designs vorhanden ist.
Wenn Sie eine schnelle Google-Suche nach "So fügen Sie ein Kontaktformular zu WordPress hinzu", Sie werden wahrscheinlich einen starken Trend bemerken, wenn es um die Überschrift des Tutorials geht. Die meisten Tutorials enthalten etwas in der Art von"… Ohne ein Plugin". Dieser Trend, der für Dutzende von Tutorialthemen existiert, erinnert an die Idee, dass Plugins schlecht sein müssen und möglicherweise die Leistung Ihrer Website beeinträchtigen. Die Worte"ohne ein Plugin"In Tutorial-Titeln und Forenbeiträgen so üblich", glauben viele Leute, dass es besser ist, insbesondere für die Leistung, Teile der Funktionalität in Themen (egal, ob Sie selbst oder eines von Ihnen gekauft haben) einzubeziehen, statt sich darauf zu verlassen ein Plugin, um es bereitzustellen.
Die erste Antwort, die ich auf diesen weit verbreiteten Glauben habe, ist, dass er völlig unbegründet und tatsächlich völlig falsch ist. Es gibt verschiedene Aspekte, warum dieser Glaube falsch ist, und ich werde sie Punkt für Punkt durchgehen. Ich werde auch kurz auf den Glauben eingehen, dass weniger Plugins besser sind, was (normalerweise) auch völlig falsch ist.
Die Idee hinter dieser Überzeugung ist, dass Plugins oft die Quelle von Problemen auf Ihrer Website sind, entweder weil sie schlecht geschrieben sind oder mit einem Thema in Ihrem Thema kollidieren. Wenn Plugins häufig schlecht sind, ist es sinnvoll, Funktionalität (z. B. Kontaktformulare) innerhalb des Designs zu platzieren?
Falsch, und hier ist warum:
"Ob Code an Punkt Y oder Punkt X geladen wird, ist nicht effizienter."
Erstens ist der einzige Unterschied zwischen Code, der in einem Design platziert wird, und Code, der in einem Plugin platziert wird, der Zeitpunkt der Ausführung. Aktive Plugins werden vor dem derzeit aktiven Design geladen und ausgeführt, aber ansonsten gibt es keinen Unterschied in der Art und Weise, wie der darin enthaltene Code ausgeführt wird, und auch keinen Unterschied hinsichtlich der Effizienz des Codes. Wenn Sie ein gutes Diagramm des WordPress-Kernladeprozesses erhalten möchten, lesen Sie diesen Beitrag zum Stack Exchange.
Ob Code an Punkt Y oder Punkt X geladen wird, ist nicht effizienter.
Zweitens müssen wir mit Punkt Nummer 1 jetzt fragen "Wie ist ein Thema der bessere Ort für Funktionalität?", da sowohl Plugin-Code als auch Theme-Code auf dieselbe Weise ausgeführt werden. Die Antwort ist einfach. Zwar haben Themes keinen Vorteil gegenüber Plugins, wenn sie sich überlegen, wo Teile der Funktionalität platziert werden sollen. Es hat sich jedoch herausgestellt, dass Plugins gegenüber Themes einige erhebliche Vorteile haben Ich werde diese Vorteile gleich durchgehen.
Ich weiß wirklich nicht, woher das kommt, obwohl ich vermute, dass dies mit der Tatsache zusammenhängt, dass die Leute oft Angst vor Plug-Ins haben und oft hören, dass Plug-Ins Performance-Probleme auf einer Site verursachen. Tatsache ist, dass dieser Glaube bestenfalls lächerlich ist. Wie oben erwähnt, gibt es keinen Unterschied (abgesehen vom Timing) in der Art und Weise, in der der Plugin-Code ausgeführt wird, wenn er mit dem Themencode verglichen wird.
Wenn Sie eine Funktion in ein Plugin einfügen, das Plugin ausführen, das Timing aufzeichnen und dann mit der Funktion dasselbe tun, aber wenn sie im Design platziert ist, werden Sie feststellen, dass es keinen Unterschied gibt. Beide arbeiten mit der gleichen Geschwindigkeit und haben keinen direkten Vorteil gegenüber dem anderen, was die Leistung angeht.
Dies wirft die Frage auf, ob Themen letztlich besser sind als Plugins für Funktionselemente. Die kurze Antwort, nein, absolut nicht.
Wir sollten uns jetzt fragen, ob Plugins letztendlich für Funktionalität besser geeignet sind als Themes? Die kurze Antwort, ja, meistens sind sie definitiv. Aber warum? Nun, es gibt einige Gründe.
Es geht nicht nur um diese vier Gründe, aber es sollte bereits klar sein, dass Plugins gegenüber Themes für separate Funktionen einen großen Vorteil haben.
Das bringt mich nun zu der Frage, ob es schlecht ist, viele verschiedene Plugins zu haben. Sie können sich wahrscheinlich vorstellen, wie schnell die Anzahl der aktiven Plugins zunimmt, wenn Sie die einzelnen Funktionen in separaten Plugins platzieren. Ist das ein Problem? Was ist, wenn Sie erst 10 Plugins erreicht haben? Ist das nicht viel? Wie wäre es mit 20 oder 30? Ist das nicht extrem??
Nein.
Während des WordCamp Kansas City 2012 hatte ich die Gelegenheit, einige Zeit mit Otto zu sprechen, einem der Top-Entwickler von WordPress und auch einer von Matt Mullenwegs rechten Männern. Otto hat die meiste Entwicklung auf seiner persönlichen Site gemacht und er hat mir erzählt, dass auf dieser Site Dutzende kleiner Funktions-Plugins laufen. Jedes der Plugins hat spezifische Aufgaben und sie laufen alle perfekt nebeneinander, obwohl es viele davon gibt.
Ich persönlich habe ungefähr 50 Plugins auf der Plugins-Site meines Pippins.
Der Punkt ist, dass Plugins keine Leistungsprobleme verursachen, einfach weil es sich um Plugins handelt, nicht einmal, wenn 100 oder sogar 200 gleichzeitig aktiv sind. Leistungsprobleme bei Plugins kommen von den schlecht geschriebenen, nicht von der Anzahl der Plugins. Mit einem einzigen schlecht geschriebenen Plugin können Sie leicht mehr Leistungsprobleme verursachen als mit 300 einfachen, gut geschriebenen Plugins.
Leistungsprobleme sind in der Regel auf das Laden von Ressourcen und das Durchführen von Datenbankabfragen zurückzuführen. Daher wirken sich Plugins, die viele dieser Aufgaben ausführen, auf die Leistung aus. Plugins, die keine Abfragen für die Datenbank durchführen oder Ressourcen laden, haben keinen Einfluss auf die Leistung. Daher können Sie 300 Plugins auf Ihrer Site buchstäblich ohne Auswirkungen ausführen.
Ich weiß auch, dass WP Candy immer über 80 oder 90 aktive Plugins verfügt.
Der Schlüssel ist zu beachten, dass die Anzahl der Plugins keinen Einfluss auf die Leistung hat, nur die Qualität und der Typ des Plugins wirken sich auf die Leistung aus.
Der zweite wichtige Punkt, den Sie bedenken sollten, ist, dass Code in Plugins genauso ausgeführt wird wie Code in Designs. Nehmen Sie also die Idee ab, dass es besser ist, Funktionalität in Ihr Theme zu stellen als ein Plugin. Themes sollen die visuellen Aspekte Ihrer Site steuern, nicht die Funktionalität.
Der letzte Punkt, an den man sich erinnert, ist, dass Plugins nur dann schlecht sind, wenn sie schlecht gebaut werden. Plugins selbst sind niemals von Natur aus schlecht. Sie sind nur schlecht, weil der Code, aus dem das Plugin besteht, schlecht ist.