WordPress Hooks: Der wesentliche Leitfaden
Veröffentlicht: 2021-01-26WordPress-Hooks sind ein hilfreiches Tool für Entwickler, die WordPress-Plugins und -Designs erstellen. Tatsächlich sind sie so nützlich, dass die Entwickler von WordPress sie im gesamten WordPress-Kern verwenden. Aber was genau sind WordPress-Hooks und wie verwendet man sie?
In diesem Leitfaden werfen wir einen Blick darauf, wie man WordPress-Hooks effektiv nutzt und tauchen in die Grundlagen ein. Tauchen wir ein!
Was sind Hooks in WordPress?
Kurz gesagt, WordPress-Hooks sind Ausschnitte von WordPress-Code, die Ausschnitte anderer Teile von WordPress-Code erfassen und ausführen. Sie ermöglichen es Entwicklern im Wesentlichen, in ihren Designs und Plugins einfach zwischen verschiedenen Dateien zu wechseln.WordPress-Hooks sind im WordPress-Kern verpackt. Jedes Theme und Plugin verwendet sie ebenfalls.
WordPress-Hooks erklärt
Der Hauptzweck von Hooks in WordPress besteht darin, Entwicklern zu ermöglichen, die Funktionsweise des Content-Management-Systems grundlegend zu ändern, ohne die WordPress-Kerndateien zu ändern. Da WordPress Open Source ist, könnten Sie sich mit Kerndateien herumschlagen, aber es besteht eine 99%ige Chance, dass Sie es innerhalb von Minuten bereuen würden.
Obwohl es für neuere Entwickler etwas schwer zu verstehen sein kann, ist es absolut wichtig zu lernen, wie WordPress-Hooks funktionieren. Oftmals entsteht Verwirrung aufgrund der Terminologie, die WordPress verwendet. Obwohl die Aktion hinter den Kulissen der vieler Programmiersprachen sehr ähnlich ist, ist die Wortwahl anders. Es ist oft am einfachsten zu lernen, wie man diese erstellt und verwendet, indem man zuerst den Beispielen folgt, sie liest und dann übt.
Um WordPress-Hooks zu schreiben, müssen Sie in der Lage sein, in PHP zu programmieren. PHP ist die zugrunde liegende Sprache für die überwiegende Mehrheit von WordPress. Sie können sich Hooks als Öffnungen vorstellen, in die andere PHP-Funktionen einklinken können. Sie können sich WordPress-Hooks auch als Callbacks vorstellen, die etwas mit Daten oder der Anzeige machen, bevor der Benutzer die Daten sieht.

Zwei Arten von WordPress-Hooks
Es gibt zwei Haupttypen von WordPress-Hooks, die Sie lernen müssen:
- WordPress-Action-Hooks
- WordPress-Filterhaken
Werfen wir einen Blick auf diese beiden Arten von WordPress-Hooks und wie sie sich unterscheiden. Wir werden auch einige Beispiele für Aktions-Hooks und Filter-Hooks untersuchen, um ihre Verwendung besser zu veranschaulichen.
Der Unterschied zwischen WordPress Action Hooks und Filter Hooks
Wenn Sie Zeit damit verbracht haben, den Codex von WordPress zu überprüfen, haben Sie wahrscheinlich diese Begriffe beiläufig herumgeworfen gesehen. Leider ist eine der Schwächen des Codex, dass er von den Entwicklern selbst geschrieben wurde. Als Nebeneffekt sind einige wichtige Unterschiede, die für sie offensichtlich sind, für diejenigen nicht offensichtlich, die mit dem WordPress-Kerncode nicht so vertraut sind.
Die einfachste Möglichkeit, zwischen den beiden Arten von WordPress-Hooks zu unterscheiden, besteht darin, dass Action-Hooks keine Werte zurückgeben, während Filter-Hooks Werte zurückgeben.Für diejenigen, die mit gängigen Programmiersprachen vertraut sind, ist dies so, als ob Aktions-Hooks einen „void“-Rückgabetyp haben, während Filter-Hooks tatsächliche Daten zurückgeben.
Filter-Hooks können als Vorverarbeitungs-Hooks oder -Ereignisse betrachtet werden. Ein Filter-Hook kann Ergebnisse, die von einer Datenbankabfrage zurückgegeben werden, so filtern, dass sie nur Einträge mit dem Nachnamen „Smith“ enthalten. Dieser Filter-Hook sollte aufgerufen werden, bevor die eigentliche Datenbankabfrage aufgerufen wird, und teilt WordPress im Voraus mit, dass irrelevante Ergebnisse entfernt werden müssen, bevor sie zurückgegeben werden.
WordPress-Aktions-Hooks können als Abrufen von etwas durch Code angesehen werden. Ein gängiges Beispiel für einen Action-Hook ist das Einfügen einer zusätzlichen CSS-Datei in eine Site-Seite, um sie anders aussehen zu lassen. Denken Sie daran, dass Hooks die Anzeige von Daten ändern, bevor sie dem Benutzer übermittelt werden. Ein Action-Hook liefert eine neue CSS-Datei, die die Benutzererfahrung verbessert. Dieser Prozess beinhaltet weder das Bearbeiten des WordPress-Kerns noch das Bearbeiten des Kern-Webstamms der Site. Auf diese Weise können WordPress-Hooks in Verbindung mit Plugins die Verwaltung mehrerer WordPress-Sites erheblich erleichtern.
Hooks und Filter erklärt
Nachdem wir uns nun eine abstraktere Übersicht über WordPress-Hooks und -Filter angeschaut haben, lassen Sie uns in die technischen Details ihrer Funktionsweise eintauchen.
Sie können sich einen WordPress-Hook als ein Ereignis vorstellen, das mit einem Namen auftritt. Ein Beispiel für eines, das im WordPress-Kern enthalten ist, heißt save_post . Mit Haken, sagen wir , im Wesentlichen , dass , wenn save_post ausgeführt wird, wollen wir unsere Haken oder Filter zu befestigen und daneben laufen.
Wir hängen in WordPress sogenannte Callbacks oder Callback-Funktionen an Hooks an. Dies ist nur eine ausgefallene Art zu sagen, dass wir WordPress bitten, den Code auszuführen, der in Funktionen enthalten ist, die wir erstellt haben, wenn das Ereignis ausgelöst wird, das wir „eingehakt“ haben (wie save_post in unserem obigen Beispiel).
Obwohl es einfach genug ist, WordPress-Hooks hinzuzufügen, wie wir später untersuchen werden, denken Sie daran, dass ein falsch geschriebener Rückruf Ihre Rückrufkette vollständig ruinieren kann. In diesem Fall kann ein defektes Glied in der Rückrufkette all Ihre harte Arbeit ruinieren! Führen Sie immer ein Backup durch, bevor Sie Änderungen vornehmen. Nutzen Sie ein vertrauenswürdiges WordPress-Backup-Plugin, bevor Sie Änderungen vornehmen.
Interessiert an noch mehr technischen Details zur Funktionsweise von Haken? Schauen Sie sich den nächsten Abschnitt an! Wir haben eine ausführlichere Erklärung sowie ein Tutorial zum Erstellen Ihres ersten Action-Hooks und Ihres ersten Filter-Hooks!
Wie funktionieren Hooks in WordPress?
Denken Sie daran, obwohl es einige Unterschiede gibt, können Action-Hooks und Filter-Hooks in WordPress als weitgehend gleich angesehen werden. Lassen Sie uns kurz durchgehen, wie diese Hooks funktionieren. Wir werden später in diesem Artikel ein Beispiel und ein Tutorial durchgehen.
Beide Arten von Hooks müssen vor der Verwendung bei WordPress registriert werden. Dadurch erhält das CMS die Liste der Funktionen, die angehängt werden müssen, wenn ein Ereignis ausgeführt wird, an das wir unseren Code „angehängt“ haben. Stellen Sie außerdem sicher, dass Aktionen als Aktionen und Filter als Filter registriert sind.
Nutzen Sie beim Hinzufügen einer Aktion die WordPress-Kernfunktion add_action() . Verwenden Sie beim Hinzufügen von Filtern die entsprechende WordPress-Kernfunktion namens add_filter() . Wenn Ihre Rückrufe (die in der Kette funktionieren, wenn Ihr Ereignis oder Ihre Aktion ausgeführt wird) keine Daten zurückgeben, müssen Sie sie als Aktion registrieren. Wenn es zurückgibt, was WordPress als filterbare Daten bezeichnet, registrieren Sie es als Filter.
Was auch immer Sie in diesen Funktionen angeben, wird ausgeführt, wenn Ihre Site von einem Benutzer geöffnet wird. WordPress hat einen internen Generator, der all diese Aktionen und Filter für uns zusammenstellt. Auch für Aktionen und Filter gibt es entsprechende Entfernungsfunktionen. Diese können verwendet werden, um eine Funktion aus Ihrer Callback-Kette zu entfernen. Sie sind oft in bedingten Anweisungen in WordPress PHP enthalten.
Genau wie unsere add-Funktionen heißen sie remove_action() und remove_filter() .
Wie erstelle ich einen Hook in WordPress?
Endlich ist es an der Zeit, unseren ersten Hook in WordPress zu erstellen! Denken Sie daran, dass das Erstellen von Hooks das Hinzufügen von benutzerdefiniertem Code beinhaltet, der den Benutzern unserer Site angezeigt und gerendert wird.
Beachten Sie nur, dass wir jedes Mal, wenn wir benutzerdefinierten Code hinzufügen, ein gewisses Sicherheitsrisiko hinzufügen. Aus diesem Grund ist jetzt der ideale Zeitpunkt, um sicherzustellen, dass Sie ein vertrauenswürdiges WordPress-Sicherheits-Plugin installiert und einsatzbereit haben. Dies kann Ihnen helfen, beruhigt zu sein und potenzielle Bedrohungen für Ihre Website durch benutzerdefinierten Code zu verringern, der neue Schwachstellen einführen könnte.
Schauen wir uns an, wie wir einen sehr einfachen Action-Hook in WordPress erstellen können. Dann sehen wir uns ein Beispiel für einen Filter-Hook im CMS an.
Wie erstelle ich einen Action-Hook in WordPress?
Lassen Sie uns für unser Aktionsbeispiel etwas tun, das fast alle WordPress-Entwickler irgendwann tun müssen: den Inhalt auf der WordPress-Anmeldeseite anpassen. Die Seite ist sehr allgemein gehalten.
Wenn Sie beispielsweise eine WordPress-Site für eine akademische Einrichtung verwalten, werden Sie möglicherweise aufgefordert, die Studenten daran zu erinnern, ihre Campus-E-Mail-Adresse zu verwenden, um sich bei ihrem WordPress-Portal anzumelden. Wir könnten unter den Feldern „Benutzername“ und „Passwort“ eine einfache Erinnerung hinzufügen, die besagt, dass „ Denken Sie daran, Ihre @myuniversity.edu-E-Mail als Ihren Benutzernamen zu verwenden “, um Anrufe bei der IT-Abteilung zu reduzieren, die um Hilfe beim Anmelden bittet.
Dies würde natürlich eher einem Aktionshaken als einem Filterhaken entsprechen. Das liegt daran, dass eine einfache Anpassung, wie das Bearbeiten des Textes auf der Hauptbenutzer-Anmeldeseite, keine Daten zum Filtern zurückgibt.
Zuerst müssen wir herausfinden, wo genau wir unsere Aktion einhaken sollen. In den meisten Fällen kann es sehr aufschlussreich sein, sich die PHP-Datei anzusehen, in der Sie Inhalte hinzufügen möchten. Schaut man sich die WordPress-Datei an, die den Login-Inhalt enthält, gibt es mehrere Aktionsauslöser. In unserem Beispiel unserer Erinnerung an die Studenten, ihre institutionellen E-Mails zu verwenden, werden Sie den folgenden Code in der PHP-Datei der Anmeldeseite sehr interessant bemerken:
do_action('login_footer');
Die do_action- Funktion ist eine WordPress-Kernfunktion, die auf Anfrage unseren Action-Hook ausführt. Voraussetzung ist natürlich, dass wir alle Funktionen registriert haben, die wir an diesen Hook anhängen wollen.
In diesem Fall ist „login_footer“ ein vorgefertigter Hook des WordPress-Teams. Obwohl es integriert ist, können wir trotzdem unseren eigenen Code daran anhängen. Standardmäßig lädt dieser Hook den Fußzeileninhalt der generischen Anmeldeseite. Die Fußzeile wäre ein idealer Ort für unseren Text, weshalb wir diesen Seitenabschnitts-Hook nutzen.
Wir können unserer wp-login.php eine neue PHP-Funktion hinzufügen, um loszulegen. Alles, was wir tun müssen, ist eine Textzeile auszugeben, etwa so:
Funktion add_uni_email_reminder() { <p>Denken Sie daran, Ihre @myuniversity.edu-E-Mail als Benutzernamen zu verwenden!< /p> } do_action( 'login_footer', 'add_uni_email_reminder');
In diesem Fall haben wir einfach eine neue „Aktion“ in der Datei wp-login.php erstellt . Der Name der Funktion des Aktions-Hooks (add_uni_email_reminder) ohne die Parameterklammern kann der Parameterliste von do_action() hinzugefügt werden, um zu registrieren, dass sie beim nächsten Rendern der Fußzeile ausgeführt wird.

Wie erstelle ich einen Filter-Hook in WordPress?
Jetzt sind wir in Fahrt! Wir haben die Grundlagen von WordPress-Hooks gelernt und wie man ihre Kraft nutzt. Wir haben sogar selbst eine kleine Modifikation vorgenommen! Der einzige große Teil, der übrig bleibt, ist das Üben mit Filterhaken. Denken Sie daran, dass dies Hooks sind, die eine Art von Daten zurückgeben, durch die wir filtern können. Diese sind etwas komplexer als Action-Hooks, aber jetzt, da Sie die Grundlagen von Hooks verstehen, sollte es etwas einfacher sein.
Beginnen wir mit unserem WordPress-Filterhaken. Zuerst müssen wir entscheiden, welchen spezifischen Filter wir hinzufügen möchten. Ein Element, das Ihr Kunde möglicherweise anfordern könnte, ist die Anpassung der Funktionen zum Hinzufügen von Seiten. Hier können WordPress-Benutzer neue Blog-Beiträge hinzufügen. Um es so einfach wie möglich zu halten, möchten wir beispielsweise den Text „Titel hier eingeben“ im Textfeld „Titel“ bearbeiten. Nehmen wir an, wir möchten es spezifischer machen und stattdessen "Blog-Post-Titel eingeben" verwenden.
Beachten Sie, dass unsere Funktion in unserem Filter-Hook-Beispiel unten einen Parameter hat. Darüber hinaus hat die eigentliche Ausführung unseres Filters einen zusätzlichen Parameter „Priorität“. Sie werden auch feststellen, dass die eigentliche Funktion, die wir zum Registrieren unseres Hooks verwenden, genau die gleiche ist wie unser „action“ -Beispiel add_action . Dass es sich bei dieser Funktion eher um einen Filter-Hook als um einen Action-Hook handelt, ist, dass die ausgeführte Funktion, wie wir im WordPress- Kerncode sehen können, ausgeführt wird apply_filters( 'enter_title_here', __( 'Titel hier eingeben' ), $post ); . Wir wenden Filter an, wie der Name der Funktion stark vermuten lässt.
Dies ist oft ein Auslösepunkt für neuere Benutzer. Es ist wirklich nur ein kleines Formulierungsproblem; Sobald Sie das überwunden haben, wird es ganz einfach, den Unterschied zwischen Hooks und Filtern in WordPress zu entschlüsseln! Lassen Sie uns ohne weiteres darauf eintauchen, diesen Platzhaltertext zu ändern!
Funktion our_new_title_here( $title ) { $title = __( 'Blog-Post-Titel eingeben', 'text-domain' ); $titel zurückgeben; } add_action( 'Titel_hier eingeben', 'unser_neuer_Titel_hier', 10 );
Sie fragen sich vielleicht, was diese „10“ in unserer Funktion add_action bedeutet. Hoffentlich verstehen Sie die ersten beiden Parameter; Der erste ist der Standard-WordPress-Hook, und der zweite ist der Name der Funktion und des Filters, die wir an enter_title_here anhängen . Die „10“ ist die Prioritätsstufe, die wir diesem Filter zuweisen.
Denken Sie daran, dass sowohl Aktionen als auch Filter in WordPress eine Reihe von kaskadierenden „Rückrufen“ oder benutzerdefinierten Funktionen sind, die ausgeführt werden. Diese erhalten unterschiedliche Prioritätsstufen. Wir werden etwas später untersuchen, was verschiedene Zahlen bedeuten, was akzeptable Parameter sind usw. Es ist jedoch wichtig zu verstehen, dass 10 derzeit die „normale“ Prioritätsstufe von WordPress für Filter und Aktionen ist.
Wo werden WordPress-Hooks gespeichert?
Sie fragen sich vielleicht, wo WordPress all diese Aktionen und Filter möglicherweise speichern könnte. Wir haben den Wordpress - Kern verwiesen, aber das ist einfach die Lage der integrierten Aktionen und Filter und Funktionen mit ihnen verbunden. Erfahrene WordPress-Benutzer wissen wahrscheinlich, dass diese Hooks in keiner der Datenbanken gespeichert werden, die bei der Installation von WordPress erstellt werden.
Eine der einzigartigsten Funktionen von Aktionen und Filtern in WordPress ist, dass sie nirgendwo wirklich „gespeichert“ werden! Sobald wir eine Aktion oder einen Filter hinzugefügt haben, kann auf diese Aktion oder dieser Filter global auf unserer WordPress-Site zugegriffen werden. Wenn Sie denken, dass es unmöglich ist , dass es nirgendwo gespeichert wird, haben Sie Recht!
Obwohl die Struktur ziemlich komplex ist, gibt es eine PHP-Variable, in der alle unsere Aktionen und Filter gespeichert sind. Diese Variable ist global und heißt $wp_filter . Leg dich nicht direkt mit dieser Variablen an!
Für diejenigen, die sich für die technischen Details interessieren, ist diese Variable $wp_filter ein PHP-Array. Es enthält eine große Reihe von Objekten vom Typ WP_HOOK . In der PHP-Datei, die Sie in wp-includes/class-wp-hook.php nachlesen können , gibt es eine wichtige Methode: this->apply_filters() . Diese Methode löst alle unsere Callbacks aus und „registriert“ unsere benutzerdefinierten Filter und Hooks. Es ist im Wesentlichen das Brot und Butter von WordPress-Hooks.
Um diese großartige Funktion von WordPress vollständig nutzen zu können, müssen wir einige der gängigsten WordPress-Hooks kennen. Suchen Sie nicht weiter als in unserem Spickzettel unten!
WordPress-Hooks-Liste: WordPress-Hooks-Spickzettel
Beginnen wir mit einer kleinen Portion Realismus: Es gibt keine Möglichkeit, jeden einzelnen Hook in WordPress durchzugehen. Zum Glück haben einige Forscher für Neugierige eine Liste mit (buchstäblich) jeder einzelnen Aktion und jedem Filter zusammengestellt. Sie können hier eine vollständige Liste aller WordPress-Hooks sehen, aber achten Sie darauf, die Sicherheitswarnungen zu jedem Hook zu beachten. Sie sollten keine verwenden, die als "veraltet" gekennzeichnet sind. Dies bedeutet, dass sie in der modernsten Version von WordPress möglicherweise nicht unterstützt werden oder nicht, aber in jedem Fall werden sie bald nicht mehr unterstützt.
Aller Wahrscheinlichkeit nach werden Sie in 90% der Fälle nur an ein paar WordPress-Hooks interessiert sein. Hier sind fünf der beliebtesten Aktionen und Filter in WordPress, zusammen mit einer kurzen Erklärung, was sie sind!
- add_setting() – Wie der Name schon sagt, fügt diese Aktion deinen WordPress-Einstellungen hinzu. Sie werden diese Aktion wahrscheinlich nicht auf einer benutzerorientierten Seite einschließen wollen, aber sie kann lebensrettend sein, wenn Sie administrative Seiten ändern.
- apply_filters() – Kommt Ihnen das bekannt vor? Es sollte, weil wir es früher benutzt haben! Dies ruft sofort unsere gesamte Callback-Kette auf, die mit einem Hook verbunden ist.
- esc_attr() – Der Name dieses ist eine Abkürzung für „Escape HTML-Attribute“. HTML-Escape bedeutet, dass wir ASCII-Codes für HTML-Symbole verwenden. Dies wird fast universell verwendet, um die Eingaben auf Seiten zu „bereinigen“. Mit anderen Worten, es wäre sehr wünschenswert, diese Aktion an einen Hook-Lauf anzuhängen, wenn ein Benutzer ein Formular abschickt. Es verhindert, dass Benutzer Ihre Website insbesondere mit Cross-Site-Scripting-Angriffen angreifen.
- the_content() – Der Name dieses Hooks klingt wahrscheinlich einfach, denn er ist es! Es erfasst einfach den Inhalt des aktuellen Beitrags, der angezeigt wird. Dies ist ideal, wenn Sie Benutzern erlauben, den Inhalt eines Beitrags zu exportieren. Einige Websites bieten Premium-Benutzern beispielsweise die Möglichkeit, jeden Artikel als PDF-Datei zu exportieren.
- wp_nav_menu() – Abkürzung für „WordPress Navigation Menu“, dieser Hook ist ein Aktions-Hook. Es wird verwendet, um einfach das Hauptnavigationsmenü anzuzeigen, das Sie erstellen, wenn Sie Ihre WordPress-Site zum ersten Mal erstellen. Dies ist ideal, wenn Sie Seiten haben, die ein deutlich anderes Layout haben und Ihr Menü in einem alternativen Bereich anzeigen möchten.
In welcher Reihenfolge werden WordPress Hooks ausgeführt? Die Abfeuerungssequenz der WordPress-Hooks
Leider ist die genaue Reihenfolge, in der WordPress-Hooks ausgeführt werden, nicht so offensichtlich, wie Sie sich vorstellen können. Dies liegt an der schieren Menge der Haken. Ein Forscher führte eine erweiterte Analyse durch, um die Anzahl der ausgeführten Hooks und die Reihenfolge zu zählen, in der sie ausgeführt wurden, wenn die Homepage einer WordPress-Site besucht wurde.
Als ob dies nicht komplex genug wäre, haben einige WordPress-Hooks Hooks mit verschiedenen Prioritäten! Sie können sich die Hunderte von ausgeführten Hooks und ihre Bestellungen in diesem Beitrag über die Abfeuerungssequenz der WordPress-Hooks ansehen. Beachten Sie nur: Sie sollten nicht versuchen, diese Analyse auf einem anderen als einem Testserver durchzuführen, auf dem Sie es sich leisten können, alles zu verlieren!
Wir können zwar nicht viel an der Reihenfolge der Standard-Hooks ändern, aber wir können etwas an der von uns angegebenen Reihenfolge der Hooks tun. Hier kommt die Priorität von Hooks ins Spiel. Wir haben bereits darauf angespielt.
Wie funktioniert die Priorität in WordPress-Hooks?
Wie bereits erwähnt, ist die Standardprioritätsstufe, die einem Hook von WordPress zugewiesen wird, „10“. Was auch immer Sie für die Priorität entscheiden, denken Sie daran, dass der Wert eine positive ganze Zahl sein muss. Das bedeutet, dass „0“ leider kein gültiger Wert ist. Außerdem wäre -100 nicht gültig und 0,5 wäre nicht gültig. 1 würde jedoch funktionieren, ebenso wie 1111.
Im Allgemeinen gilt: Je kleiner die ganze Zahl, desto niedriger die Priorität. Wenn Sie möchten, dass ein Hook nach einem Hook ausgeführt wird, dem Sie den Standardwert 10 zugewiesen haben, können Sie seine Priorität zum Beispiel auf 9 setzen. Ihrem Hook mit der niedrigsten Priorität kann eine 1 zugewiesen werden. Außerdem können WordPress-Hooks die gleichen zugewiesen werden Priorität. Dies ist, wenn es Ihnen egal ist, in welcher Reihenfolge sie ausgeführt werden.
Zusammenfassung: Hooks in WordPress
Einer der größten Stolpersteine für neue WordPress-Entwickler ist, wie nicht standardisiert viele dieser Informationen sein können. Es gibt zwar viele technische Blogs, aber viele behandeln enge Themen, und es kann schwierig sein, sie zusammenzufassen.
Der beste Weg ist, mit WordPress-Action-Hooks und Filter-Hooks auf deiner Website zu experimentieren. Sobald Sie komplexere WordPress-Hooks erstellt haben, müssen Sie die Hooks lernen, die Sie häufiger verwenden. Mit der Zeit werden Sie sich diese Haken merken. Es ist ein mühsamer Prozess, und niemand ist in der Lage, sich jeden dieser Haken zu merken.
Der WordPress-Codex ist die beste Ressource, die Sie auf Ihrem Weg zum nächsten Top-WordPress-Entwickler der Welt nutzen können.
Kristen schreibt seit 2011 Tutorials, um WordPress-Benutzern zu helfen. Normalerweise arbeitet sie an neuen Artikeln für den iThemes-Blog oder entwickelt Ressourcen für #WPprosper. Außerhalb der Arbeit schreibt Kristen gerne Tagebuch (sie hat zwei Bücher geschrieben!), wandert und zeltet, kocht und erlebt tägliche Abenteuer mit ihrer Familie, in der Hoffnung, ein präsenteres Leben zu führen.
