Heim >Backend-Entwicklung >PHP-Tutorial >Die vollständige Anleitung zur WordPress -Leistungsoptimierung
Praktischer Leitfaden zur Verbesserung der Leistung von WordPress -Websites
Schlüsselpunkte:
WordPress macht fast 50% des CMS-Marktanteils der weltweit führenden Websites aus (Daten stammen aus dem Bereich E-Commerce). Obwohl WordPress manchmal wegen aufgeblähtem, ressourcenintensivem und Datenmodellen kritisiert wird, ist seine Popularität unbestreitbar.
Die Benutzerfreundlichkeit von
WordPress und eine niedrige Schwelle machen es weit verbreitet. Es ist einfach zu errichten und erfordert wenig technisches Wissen. Sie finden einen WordPress -Host für nur ein paar Dollar pro Monat, und die grundlegenden Einstellungen werden in nur einer halben Stunde Klicks durchgeführt. Kostenlose WordPress -Themen und -Themen mit Wysiwyg Page Builder gibt es zuhauf.
Viele Menschen schauen auf WordPress herab, aber es ist unbestreitbar, dass WordPress die Entwicklung des Internets und des PHP gefördert hat, und viele Internet -Profis haben ihre Karriere aufgrund der Leichtigkeit von WordPress begonnen.
Diese Benutzerfreundlichkeit hat jedoch Kosten. Viele Websites unter dem Banner von WordPress werden nicht von Fachleuten erstellt, sondern von billigen Entwicklern durchgeführt, und ihre Leistung und ihr Aussehen werden oft übersehen. Professionelles Erscheinungsbild und Leistung sollten anschließend nicht behoben werden, sondern während der Planungsphase der Website berücksichtigt werden.
Ling's Autos, ein bekannter britischer Gebrauchtwagenhändler, hat eine einzigartige Marketingmethode ausprobiert und nachahmen nicht nach, es sei denn, Sie wissen sehr gut, was Sie tun.
Alles beginnt mit der Hostauswahl
Neuling Leute wählen normalerweise kostengünstige Produkte und sind mit vielen anfänglichen Funktionen ausgestattet. Dieser Teil der Website -Setup muss angesichts der unsachgemäßen Geschäftspraktiken einiger großer Branchenteilnehmer und dem Bedarf des Kunden nach Migrationsfachleuten des Kunden ernst genommen werden.
Wir können WordPress -Hosting -Anbieter in mehrere Ebenen unterteilen:
Für verwaltete Hosts ist es wichtig, den Serverstapel, die CDN -Integration und den SSD -Speicher zu beachten. Garantierte Ressourcen wie A2 sind ein großer Vorteil. Als nächstes kommt SSH Access. Technologie-versierte Benutzer können von der Verfügbarkeit von WP-CLI profitieren.
Bei der Auswahl von VPS ist es wichtig zu beachten, dass die Xen- oder KVM -Virtualisierung besser ist als OpenVZ, da sie die Überserklärung von Ressourcen verringern und dazu beitragen kann, dass die von Ihnen gekauften Ressourcen tatsächlich bei Ihnen stehen. Es bietet auch eine bessere Sicherheit.
Easy Engine ist eine Software, die Ihre gesamte VPS/WordPress -Installation in eine Stunde Arbeit verwandeln kann.
In Bezug auf den Serverstapel ist Nginx, wenn Sie die Leistung verfolgen, besser als Apache, Php 7 ist ein Muss. Wenn wir Apache wirklich brauchen, ist es ein Vorteil, Nginx als Reverse -Proxy zu verwenden, aber dieses Setup kann komplizierter sein.
Tests zeigen, dass PHP 7 gegenüber früheren Versionen einen großen Vorteil hat. Nach Fasthosts.co.uk:
WordPress 4.1 hat die Anforderungen pro Sekunde auf Php 7 um 95%erhöht.
Wenn Sie sich für einen Wirt entscheiden, sind Sie sich der negativen Erfahrungen einiger berüchtigter Anbieter bewusst.
Software Vorsichtsmaßnahmen
Was normalerweise WordPress-Websites verlangsamt, ist das riesige Front-End, das viele statische Ressourcen und Datenbankabfragen enthält. Diese Probleme beruhen aus der Auswahl der Themen (und deren Seitenbauer, großen Schieberegler usw.), die aufgrund vieler Anfragen und der Gesamtgröße nicht nur die anfängliche Belastung verlangsamt, sondern auch aufgrund vieler JavaScript und Inhalte, die sein müssen gerendert.
Die goldene Regel hier lautet: Verwenden Sie es nicht, es sei denn, es gibt einen guten Grund.
Dies mag wie eine Regel aus Homer Simpsons Mund klingen, aber wenn Sie alle Schnickschnack überspringen können, überspringen Sie es. Konservativ sein. Wenn Sie einige glänzende Funktionen oder JS -Visuals hinzufügen müssen, priorisieren Sie immer diejenigen, die für Ihre genauen Anforderungen so weit wie möglich zugeschnitten und codiert werden. Wenn Sie eine erfahrene Codierungsperson sind und das Projekt die Arbeit rechtfertigt, denken Sie daran, Ihren eigenen Code zu schreiben.
Überprüfen Sie alle Plugins, die für Ihre Website unverzichtbar sind - und entfernen Sie andere Plugins.
Das Wichtigste ist: Sichern Sie Ihre Website, bevor Sie mit dem Trimmen beginnen!
Wenn Sie ein Thema verwenden, bei dem Sie viele benutzerdefinierte Beiträge oder Felder verwenden, beachten Sie bitte, dass viele davon Ihre Datenbankabfrage verlangsamen. Halten Sie Ihr Datenmodell so einfach wie möglich. Wenn nicht, beachten Sie, dass der ursprüngliche Zweck von WordPress eine Blog -Engine war. Wenn Sie mehr Funktionen benötigen, sollten Sie einige vorhandene MVC -Webrahmen in Betracht ziehen, die Ihnen mehr Kontrolle über Ihr Datenmodell und Ihre Datenbankauswahl erhalten.
In WordPress können wir reichhaltige Datenmodelle erstellen, indem wir benutzerdefinierte Post -Typen, benutzerdefinierte Taxonomie und benutzerdefinierte Felder verwenden, aber auf die Kosten für Leistung und Komplexität achten.
Wenn Sie den Code verstehen, überprüfen Sie bitte Ihr Thema auf unnötige Datenbankabfragen. Jeder einzelne Datenbankzugriff gibt kostbare Millisekunden in Ihrem TTFB sowie Megabyte auf Ihrem Server aus. Denken Sie daran, sekundäre Schleifen können teuer sein. Seien Sie also vorsichtig, wenn Sie Teile und Widgets verwenden, die zusätzliche Beiträge wie Schieberegler oder Teilbereiche anzeigen. Wenn Sie sie verwenden müssen, erwägen Sie, alle Beiträge in einer Abfrage zu erhalten, da dies sonst Ihre Website verlangsamen kann. Für diejenigen, die nicht von Grund auf neu codieren möchten, gibt es ein Github -Repository.
Verwenden benutzerdefinierter Felder, um Beiträge zu erhalten, die auf bestimmten Bedingungen basieren, kann ein leistungsstarkes Tool zur Entwicklung komplexer WordPress -Funktionen sein. Hier ist ein Beispiel für eine Meta -Abfrage, bei der Sie einige detaillierte Anweisungen zu ihren Kosten finden. Zusammenfassung: Post -Metadaten sind nicht zur Filterung gebaut, Taxonomie ist.
get_post_meta ist eine Funktion, die normalerweise zum Erhalten von benutzerdefinierten Feldern verwendet wird. Es kann nur mit der Post -ID als Parameter aufgerufen werden. In diesem Fall wird das Metadatenfeld aller Beiträge in einem Array erhalten oder es kann das nimmt, das die Metadaten in einem Array erhalten, oder es kann das nehmen Name des benutzerdefinierten Feldes als zweiter Parameter. In diesem Fall wird nur das angegebene Feld zurückgegeben.
Wenn Sie Get_Post_meta () in einem Beitrag mehrmals (für mehrere benutzerdefinierte Felder) auf einer Seite oder auf einer Anfrage verwenden Post -Metadaten werden zwischengespeichert.
Installieren und Entfernen verschiedener Plugins und das Ändern verschiedener Themen während des gesamten Lebenszyklus einer Website füllen Ihre Datenbank häufig mit vielen unerwünschten Daten. Es ist durchaus möglich zu entdecken, dass die Datenbank auf Hunderte von Megabyte oder sogar mehr als Gigabyte nicht mehr erklären kann, wenn die Überprüfung der Überprüfung, warum WordPress -Websites langsam ausgeführt werden oder aufgrund der Erschöpfung des Serverspeichers nicht geladen werden, und nichts kann es erklären. In WP-Optionen werden häufig viele verwaiste Daten zurückgelassen. Dies umfasst, aber nicht auf verschiedene transiente Daten beschränkt (dieser Artikel warnt vor Best Practices vor dem Löschen von Transient-Daten in Plug-Ins). Transiente Daten sind eine Form von Cache, aber wie bei jedem anderen Cache kann sie mehr schaden als nützlich, wenn sie falsch verwendet werden. Wenn Ihre Serverumgebung sie bietet, verfügt WP-CLI über eine Reihe von Befehlen speziell für die vorübergehende Datenverwaltung, einschließlich Löschung. Wenn nicht, gibt es einige Plugins in der WordPress -Plugin -Bibliothek, die abgelaufene Transientendaten entfernen können, sie bieten jedoch weniger Kontrolle.
Wenn das Löschen von Transient-Daten unsere Datenbank immer noch ohne praktische Gründe aufblickt, ist WP-Sweep ein hervorragendes kostenloses Tool, mit dem die Datenbank bereinigt werden kann. Eine andere Sache zu berücksichtigen ist WP Optimize.
Bevor Sie eine Art von Datenbankreinigung durchführen, wird dringend empfohlen, Ihre Datenbank zu sichern!
Ein sehr bequemes Plugin zur Analyse des gesamten WordPress -Anforderungslebenszyklus sind Debug -Objekte. Es bietet Inspektionen aller transienten Daten, Shortcodes, Klassen, Stile und Skripte, geladenen Vorlagen, Datenbankabfragen und Hooks.
Stellen Sie ein angemessenes, leistungsorientiertes Setup sicher-denken Sie im Voraus unserem Serverstapel und beseitigen Sie das mögliche Aufblähen aus der Themenauswahl, Plug-In- und Widget-Überladungen-wir sollten versuchen, Engpässe zu identifizieren.
Wenn wir unsere Website in einem Tool wie Pingdom Speed -Test testen, erhalten wir ein Wasserfalldiagramm aller Ressourcen, die in der Anfrage geladen sind:
Dies gibt uns detaillierte Informationen über den Anfrage-Wirkungs-Lebenszyklus, den wir analysieren können, um Engpässe zu finden. Zum Beispiel:
Um umfangreichere Tests und Anleitungen zur Verbesserung der Website zu erhalten, gibt es ein kleines Dienstprogramm für Befehlszeilen namens WebCoach. In einer Umgebung mit installierten NodeJs und NPM (wie dem Homestead verbessert) ist es einfach zu installieren:
<code>npm install webcoach -g</code>
Nach der Installation können wir detaillierte Erkenntnisse und Vorschläge zur Verbesserung aller Aspekte der Website erhalten, einschließlich Leistung:
cache
Cache kann eine wichtige Rolle bei der Verwaltung von WordPress -Websites spielen. Es gibt mehrere Ebenen und mögliche Möglichkeiten zum Cache.
Page -Cache ist ein Cache der gesamten HTML -Ausgabe einer Webanwendung.
Wenn Sie können, sollten wir zunächst versuchen, Lösungen auf Serverebene wie Nginx-Cache oder Lack oder Caching-Systeme zu testen, die von Hosting-Anbietern wie Kinsta, SiteGround bereitgestellt werden.
Wenn dies nicht hilft, wie wir es uns erhofft haben, möchten wir möglicherweise Plugins wie WP Super Cache, WP schnellster Cache oder den verbesserten W3 -Gesamt -Cache auf GitHub verwenden. All dies kann die Leistung verbessern, erfordert jedoch normalerweise ein gewisses Experimentieren. Eine nicht ordnungsgemäß konfigurierte Caching -Lösung kann die Leistung der Website tatsächlich beeinträchtigen. Zum Beispiel wird W3TC - zumindest vor Verbesserungen - als die beste freie Cache -Lösung angesehen, die Wunder wirkt… wenn es funktioniert. Wenn es nicht funktioniert, kann Ihre Website offline dienen.
WP -Rakete gilt als die am stärksten gelobte fortgeschrittene Caching -Lösung.
Seite Caching kann die Leistung erheblich verbessern und die gesamte Website von RAM liefern. Wenn Sie jedoch eine dynamische Website mit einem Einkaufswagen haben oder sich auf Cookies oder personalisierte Frontenden verlassen, kann dies Komplikationen verursachen. Es kann einem Benutzer den UI -Teil eines anderen Benutzers zur Verfügung stellen. Daher muss er normalerweise vor der Produktion getestet werden. Dies eignet sich besonders für Lösungen auf nicht verwalteten Servern wie Lack- oder Cloudflare -Seite.
Fragment-Caching ist eine Lösung, die in Betracht gezogen werden kann, wenn dynamische, cookie-abhängige Websites mithilfe der vollständigen Seitenmethode schwer zu zwischenstrahlen sind oder wenn wir AJAX-Anforderungen zwischenspeichern. Hier ist eine gute Einführung.
Objekt -Cache bedeutet, alle Datenbankabfragen und PHP -Objekte im Speicher zu kompilieren und zu speichern. Einige Cache -Plugins versuchen, Objekt -Cache -Backends für uns zu verwalten. Die Verwendung von Backends ist normalerweise APCU, Memcached und Redis. Sie müssen auf dem Server installiert werden.
Um die Leistung unseres PHP-Code- und Objekt-Cache tiefer zu testen, ist ein wertvolles Tool (erfordert Shell-Zugriff und Installation von WP-CLI) der Profilbefehl. Wir können es mit dem folgenden Befehl installieren:
<code>npm install webcoach -g</code>
oder
<code>wp package install git@github.com:wp-cli/profile-command.git</code>
(Abhängig von der Installationssituation müssen Sie möglicherweise das Flag --allow-Root hinzufügen)
Wir können dann den gesamten Lastzyklus analysieren oder tief in bestimmte Haken, Dateien und Klassen, deren Ladezeit und Cache -Verhältnisse gehen.
Browser -Cache bedeutet, den Browser des Besuchers zu erzwingen, um ihre statischen Dateien in ihrem Cache zu speichern. Sie müssen diese Dateien also nicht von unserem Server abrufen, wenn sie wiederholt zugegriffen werden. Verwenden Sie hier die -Cache-Control und -Header. Caching -Plugins verwalten normalerweise Browser -Caches und setzen Sie Header. Technaleero hat einen detaillierteren Leitfaden erstellt.
Statische Datei
statische Dateien sind Bilder, Style -Blätter, JS -Codes, Schriftarten, Mediendateien usw. Wir sollten sicherstellen, dass wir sie komprimieren und HTTP/2 verwenden, um diese Dateien nach Möglichkeit zu bedienen. Wenn unser verwalteter Host HTTP/2 nicht unterstützt oder die Migration unserer nicht verwalteten VPs auf HTTP/2 über unsere Reichweite hinausgeht, ist es am einfachsten, die CDN in unseren Stapel zu integrieren. CDN bietet unsere statischen Dateien aus Rechenzentren, die unserem Publikum am nächsten stehen. Dies reduziert die Latenz und bedeutet häufig, dass die hochgestaltete Infrastruktur nutzt.
autooptimize ist ein Plugin, das dazu beitragen kann, unsere statischen Vermögenswerte zu manipulieren und die Anzahl der Anforderungen zu verringern.
In Bezug auf Mediendateien sollten wir in Betracht ziehen, unsere Videos zu komprimieren/zu codieren, um ihre Größe zu reduzieren und sie über Anbieter wie YouTube zu liefern, um die Stress auf unseren Servern zu verringern. Ein Cloud -Speicheranbieter wie Amazon S3 ist eine weitere gute Wahl. Das Video -Hosting liegt außerhalb des Rahmens dieses Artikels, aber WPMudev hat einen praktischen Leitfaden zu diesem Thema erstellt.
In Bezug auf Bilder sind diese Bilder normalerweise zu groß für das Web. Manchmal ist die einzige Lösung, mit der unsere Server ordnungsgemäß funktionieren (was lange dauern kann), die Stapelkomprimierung über die Schale. Imagemagick on Linux verfügt über ein nützliches Konvertentool, mit dem wir unsere Bilder komprimieren können. In diesem Beispiel wird dies für alle JPGs im Ordner rekursiv durchgeführt, wodurch die JPEG-Qualität auf 80%sowie einige andere kleine Verbesserungen reduziert und das Bild angeordnet sein sollte (es sollte selbst interpretiert werden):
<code>npm install webcoach -g</code>
WP Bullet hat zwei hervorragende Anleitungen zur Stapelkomprimierung von JPG- und PNG -Dateien.
Zusätzlich gibt es Abbildungsdienste und entsprechende WordPress-Plug-Ins, um die Bildgröße, EWWW-Bildoptimierer usw. zu reduzieren.
Andere zufällige Eingabeaufforderungen
<code>wp package install git@github.com:wp-cli/profile-command.git</code>
in Apache:
<code>wp package install wp-cli/profile-command</code>
Plugins wie Ithemes Security, WPS -Anmeldung usw. können dazu beitragen, dieses Problem zu lösen und unsere Anmeldeseiten -URL zu ändern.
Wenn Sie unter brutaler Kraftangriff stehen und nicht von einem CDN oder einem verwalteten Host wie CloudFlare geschützt sind, sollten Sie eine Firewall wie Fail2ban verwenden (Sie sollten eine Firewall installieren, unabhängig davon, ob Sie angegriffen werden oder nicht).
Alles, müssen Sie erneut gewarnt werden: Bevor Sie Änderungen an der Website vornehmen, können Sie sie bitte unterstützen!
Schlussfolgerung
Ich hoffe, diese Zusammenstellung von WordPress -Optimierungs -Tipps kann nützlich sein. Mit zunehmender Größe der Website werden diese Techniken immer schwieriger, sich rückwirkend anzuwenden. Aus diesem Grund ist es am besten, früh zu beginnen und sich zu bemühen, das Beste aus dem Weg zu machen: Wenden Sie so viele dieser Technologien wie möglich an, bevor Sie beginnen, und Sie werden nicht nur einen reibungslosen Start haben, sondern auch vom ersten Tag Performance -Apps - Dies ist definitiv eine hervorragende Erfahrung für alle neuen Benutzer.
Stellen Sie sicher, dass Sie auch den PWA -Leitfaden von SitePoint lesen. Machen Sie Ihre WP -Website PWA vom ersten Tag an so weit wie möglich, um sie den Benutzern zu helfen, sie auf dem Startbildschirm ihres Geräts zu installieren, und bereit für wiederholten Zugriff.FAQs zur WordPress -Leistung Optimierung
Welche Plugins eignen sich am besten zur Optimierung von WordPress -Leistung?
Content Delivery Network (CDN) kann die Leistung von WordPress -Websites erheblich verbessern, indem Kopien von Website -Inhalten auf der ganzen Welt gespeichert werden. Wenn Benutzer Ihre Website besuchen, liefert CDN Inhalte vom Server, das ihnen am nächsten liegt, und verringert die Zeit, die zum Laden von Inhalten benötigt wird. Dies kann die Geschwindigkeit der Website erheblich erhöhen, insbesondere für Benutzer, die sich nicht von Ihrem primären Server befinden.
Optimierung der WordPress -Datenbank kann die Leistung der Website erheblich verbessern. Dies kann erreicht werden, indem die Datenbank regelmäßig gereinigt, unnötige Daten gelöscht und Datenbanktabellen optimiert werden. Plug-Ins wie WP-Optimize können diesen Vorgang automatisieren und erleichtern die Verwaltung einer sauberen und effizienten Datenbank.
Bildoptimierung kann die Leistung von WordPress -Websites erheblich verbessern, indem die Größe des Bildes reduziert wird, ohne die Qualität zu beeinflussen. Dies kann erreicht werden, indem das Bild komprimiert, das richtige Bildformat verwendet und das Bild an die richtige Größe angepasst wird. Plugins wie Vorstellung können diesen Vorgang automatisieren und erleichtern die Optimierung der Bilder.
Die Reaktionszeit des Servers kann die Leistung von WordPress -Websites erheblich verbessern. Dies kann durch Optimierung der Serverkonfiguration, mithilfe hochwertiger Host-Anbieter und der Implementierung von Caching-Lösungen erreicht werden. Durch die Reduzierung der Anzahl der Anforderungen, die eine Website auf den Server stellt, können Sie auch die Reaktionszeit Server erhöhen.
schrumpfende CSS und JavaScript -Dateien können die Leistung von WordPress -Websites erheblich verbessern, indem die Größe dieser Dateien reduziert wird. Bei diesem Prozess werden unnötige Zeichen wie Leerzeichen und Kommentare aus dem Code entfernt, ohne seine Funktionalität zu ändern. Plugins wie AutoPtimize können diesen Vorgang automatisieren und erleichtern das Schrumpfen von Dateien.
Optimierung von WordPress -Websites für mobile Geräte kann die Leistung Ihrer Website auf diesen Geräten erheblich verbessern. Dies kann erreicht werden, indem reaktionsschnelles Design implementiert, Bilder so optimiert werden, dass sie mobile Geräte anpassen und mobilfreundliche Themen verwenden. Darüber hinaus können Plugins wie WPTouch Ihnen dabei helfen, mobile freundliche Versionen Ihrer Website zu erstellen.
Lazy Loading kann die Leistung von WordPress -Websites erheblich verbessern, indem sie Bilder und andere Inhalte nur dann laden, wenn sie auf dem Bildschirm des Benutzers sichtbar sind. Dies kann die anfängliche Ladezeit der Seite verkürzen und die Geschwindigkeit der Website verbessern. Plugins wie Lazy Load by WP Rocket können diesen Vorgang automatisieren und das Implementieren von faulen Laden auf Ihrer Website erleichtern.
GZIP -Komprimierung kann die Leistung von WordPress -Websites erheblich verbessern, indem die Größe der Dateien reduziert wird. Dieser Vorgang umfasst die Komprimierung der Datei, bevor sie an den Browser des Benutzers gesendet wird, wodurch die Datenmenge reduziert wird, die übertragen werden müssen. Dies kann die Ladezeit der Website erheblich verbessern. Plugins wie Check und Aktivieren von GZIP -Komprimierung können diesen Vorgang automatisieren und die Implementierung der GZIP -Komprimierung auf Ihrer Website erleichtern.
Überwachung der Leistung von WordPress -Websites kann Ihnen helfen, Probleme zu identifizieren, die Ihre Website verlangsamen können. Dies kann mit Tools wie Google PageSpeed Insights, GTMetrix und Pingdom erfolgen. Diese Tools bieten Ihnen detaillierte Informationen zur Leistung der Website, einschließlich der Ladezeit, der Seitengröße und der Anzahl der Anfragen.
Das obige ist der detaillierte Inhalt vonDie vollständige Anleitung zur WordPress -Leistungsoptimierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!