In den rund 15 Jahren, seitdem ich angefangen habe, WordPress-Websites zu erstellen, hat nichts meine Produktivität – und meine Fähigkeit, Front-End-Entwicklung zu genießen – mehr beeinflusst als die Einbindung von Tailwind CSS in meinen Workflow (und das mit deutlichem Abstand).
Als ich mit Tailwind zu arbeiten begann, gab es ein aktuelles, offizielles Repository auf GitHub, das beschrieb, wie man Tailwind mit WordPress verwendet. Dieses Repository wurde seit 2019 nicht mehr aktualisiert. Aber diese fehlende Aktualisierung ist kein Urteil über die Nützlichkeit von Tailwind für WordPress-Entwickler. Indem man Tailwind das tun lässt, was Tailwind am besten kann, während WordPress immer noch WordPress sein darf, ist es möglich, die besten Teile beider Plattformen zu nutzen und moderne Websites in kürzerer Zeit zu erstellen.
Das minimale Setup-Beispiel in diesem Artikel zielt darauf ab, eine Aktualisierung dieses ursprünglichen Setup-Repositories bereitzustellen, überarbeitet, um mit den neuesten Versionen von sowohl Tailwind als auch WordPress zu funktionieren. Dieser Ansatz kann erweitert werden, um mit allen Arten von WordPress-Themes zu arbeiten, von einem geforkten Standardtheme bis hin zu etwas völlig Eigenem.
Warum WordPress-Entwickler sich für Tailwind interessieren sollten
Bevor wir über die Einrichtung sprechen, lohnt es sich, einen Schritt zurückzutreten und zu diskutieren, wie Tailwind funktioniert und was das im Kontext von WordPress bedeutet.
Tailwind ermöglicht es Ihnen, HTML-Elemente mit vorgefertigten Utility-Klassen zu gestalten, wodurch die Notwendigkeit entfällt, den größten Teil oder die gesamte CSS-Datei Ihrer Website selbst zu schreiben. (Denken Sie an Klassen wie hidden für display: hidden oder uppercase für text-transform: uppercase.) Wenn Sie in der Vergangenheit Frameworks wie Bootstrap und Foundation verwendet haben, wird der größte Unterschied, den Sie bei Tailwind CSS feststellen werden, sein minimalistischer Ansatz für das Design, kombiniert mit der Leichtigkeit, nur CSS zu verwenden, mit nur einem CSS-Reset, der standardmäßig enthalten ist. Diese Eigenschaften ermöglichen stark optimierte Websites, ohne Entwickler zu einer Ästhetik zu drängen, die im Framework selbst eingebaut ist.
Im Gegensatz zu vielen anderen CSS-Frameworks ist es außerdem unwirtschaftlich, eine „Standard“-Build von Tailwind CSS von einem bestehenden CDN zu laden. Mit all seinen Utility-Klassen wäre die generierte CSS-Datei einfach zu groß. Tailwind bietet ein „Play CDN“, aber es ist nicht für den Produktionseinsatz gedacht, da es die Leistungsvorteile von Tailwind erheblich reduziert. (Es ist jedoch sehr nützlich, wenn Sie schnelle Prototypen erstellen oder Tailwind experimentell nutzen möchten, ohne es tatsächlich zu installieren oder einen Build-Prozess einzurichten.)
Diese Notwendigkeit, den Build-Prozess von Tailwind zu nutzen, um eine Untermenge der Utility-Klassen des Frameworks zu erstellen, die für Ihr Projekt spezifisch sind, macht es wichtig zu verstehen, wie Tailwind entscheidet, welche Utility-Klassen enthalten sind, und wie dieser Prozess die Verwendung von Utility-Klassen im Editor von WordPress beeinflusst.
Und schließlich bedeutet Tailwinds aggressives Preflight (seine Version eines CSS-Resets), dass einige Teile von WordPress mit den Standardeinstellungen nicht gut zu dem Framework passen.
Beginnen wir damit, wo Tailwind gut mit WordPress funktioniert.
Wo Tailwind und WordPress gut zusammenarbeiten
Damit Tailwind ohne wesentliche Anpassungen gut funktioniert, muss es als primäres CSS für eine gegebene Seite agieren; dies schließt eine Reihe von Anwendungsfällen innerhalb von WordPress aus.
Wenn Sie ein WordPress-Plugin entwickeln und Front-End-CSS einbinden müssen, würde beispielsweise Tailwinds Preflight direkt mit dem aktiven Theme kollidieren. Ebenso, wenn Sie den Administrationsbereich von WordPress – außerhalb des Editors – gestalten müssen, können die eigenen Stile des Administrationsbereichs überschrieben werden.
Es gibt Lösungen für beide Probleme: Sie können Preflight deaktivieren und allen Ihren Utility-Klassen ein Präfix hinzufügen, oder Sie können PostCSS verwenden, um allen Ihren Selektoren einen Namespace zuzuweisen. In jedem Fall werden Ihre Konfiguration und Ihr Workflow komplizierter.
Aber wenn Sie ein Theme entwickeln, passt Tailwind direkt aus der Box hervorragend. Ich hatte Erfolg beim Erstellen von benutzerdefinierten Themes mit dem klassischen Editor und dem Block-Editor und bin optimistisch, dass mit der Weiterentwicklung von Full-Site-Editing eine Reihe von Full-Site-Editing-Funktionen gut neben Tailwind funktionieren werden.
In ihrem Blogbeitrag „Gutenberg Full Site Editing muss nicht voll sein“ beschreibt Tammie Lister Full-Site-Editing als eine Reihe separater Funktionen, die teilweise oder ganz übernommen werden können. Es ist unwahrscheinlich, dass die Global Styles-Funktionalität von Full-Site-Editing jemals mit Tailwind funktionieren wird, aber viele andere Funktionen wahrscheinlich schon.
Also: Sie entwickeln ein Theme, Tailwind ist installiert und konfiguriert, und Sie fügen mit einem Lächeln auf dem Gesicht Utility-Klassen hinzu. Aber werden diese Utility-Klassen im WordPress-Editor funktionieren?
Mit Planung, ja! Utility-Klassen sind im Editor verfügbar, solange Sie im Voraus entscheiden, welche Sie verwenden möchten. Sie können den Editor nicht öffnen und beliebige Tailwind-Utility-Klassen verwenden; in Tailwinds Fokus auf Leistung ist die Einschränkung eingebettet, nur die Utility-Klassen aufzunehmen, die Ihr Theme verwendet. Sie müssen Tailwind also im Voraus mitteilen, welche im Editor benötigt werden, obwohl sie anderswo in Ihrem Code fehlen.
Dafür gibt es verschiedene Möglichkeiten: Sie können eine Safelist in Ihrer Tailwind-Konfigurationsdatei erstellen; Sie können Kommentare mit Listen von Klassen neben dem Code für benutzerdefinierte Blöcke einfügen, die Sie im Block-Editor gestalten möchten; Sie könnten sogar eine Datei erstellen, die alle Ihre Editor-spezifischen Klassen auflistet und Tailwind anweisen, diese als eine der Quelldateien einzuschließen, die es auf Klassennamen überwacht.
Die Notwendigkeit, sich im Voraus auf Editor-Klassen festzulegen, hat mich in meiner Arbeit nie zurückgehalten, aber dies bleibt der Aspekt der Beziehung zwischen Tailwind und WordPress, nach dem ich am häufigsten gefragt werde.
Ein minimales WordPress-Theme mit minimaler Tailwind CSS-Integration
Beginnen wir mit dem einfachsten möglichen WordPress-Theme. Es gibt nur zwei erforderliche Dateien
style.cssindex.php
Wir generieren style.css mit Tailwind. Für index.php beginnen wir mit etwas Einfachem
<!doctype html>
<html lang="en">
<head>
<?php wp_head(); ?>
<link rel="stylesheet" href="<?php echo get_stylesheet_uri(); ?>" type="text/css" media="all" />
</head>
<body>
<?php
if ( have_posts() ) {
while ( have_posts() ) {
the_post();
the_title( '<h1 class="entry-title">', '</h1>' );
?>
<div class="entry-content">
<?php the_content(); ?>
</div>
<?php
}
}
?>
</body>
</html>
Es gibt viele Dinge, die ein WordPress-Theme tun sollte und die der obige Code nicht tut – Dinge wie Paginierung, Beitrags-Thumbnails, Einbinden von Stylesheets anstelle der Verwendung von link-Elementen und so weiter –, aber das reicht aus, um einen Beitrag anzuzeigen und zu testen, ob Tailwind wie erwartet funktioniert.
Auf der Tailwind-Seite benötigen wir drei Dateien
package.jsontailwind.config.js- Eine Eingabedatei für Tailwind
Bevor wir weitergehen, benötigen Sie npm. Wenn Sie sich damit unwohl fühlen, haben wir ein Anfängerhandbuch für npm, das ein guter Ausgangspunkt ist!
Da noch keine package.json-Datei vorhanden ist, erstellen wir eine leere JSON-Datei im selben Ordner wie index.php, indem wir diesen Befehl in unserem Terminal unserer Wahl ausführen
echo {} > ./package.json
Mit dieser Datei können wir Tailwind installieren
npm install tailwindcss --save-dev
Und generieren unsere Tailwind-Konfigurationsdatei
npx tailwindcss init
In unserer tailwind.config.js-Datei müssen wir Tailwind nur mitteilen, nach Utility-Klassen in unseren PHP-Dateien zu suchen
module.exports = {
content: ["./**/*.php"],
theme: {
extend: {},
},
plugins: [],
}
Wenn unser Theme Composer verwenden würde, möchten wir das vendor-Verzeichnis ignorieren, indem wir etwas wie "!**/vendor/**" zum content-Array hinzufügen. Aber wenn alle Ihre PHP-Dateien Teil Ihres Themes sind, funktioniert das Obige!
Wir können unserer Eingabedatei jeden beliebigen Namen geben. Erstellen wir eine Datei namens tailwind.css und fügen Sie dies hinzu
/*!
Theme Name: WordPress + Tailwind
*/
@tailwind base;
@tailwind components;
@tailwind utilities;
Der obere Kommentar ist erforderlich, damit WordPress das Theme erkennt; die drei @tailwind-Direktiven fügen jede der Tailwind-Schichten hinzu.
Und das war's! Wir können nun den folgenden Befehl ausführen
npx tailwindcss -i ./tailwind.css -o ./style.css --watch
Dies weist die Tailwind CLI an, unsere style.css-Datei zu generieren, wobei tailwind.css als Eingabedatei verwendet wird. Das Flag --watch wird die Datei style.css kontinuierlich neu erstellen, wenn Utility-Klassen aus einer PHP-Datei in unserem Projekt-Repository hinzugefügt oder entfernt werden.
Das ist so einfach, wie ein Tailwind-gestütztes WordPress-Theme denkbar sein könnte, aber es ist unwahrscheinlich, dass Sie es jemals in der Produktion einsetzen möchten. Lassen Sie uns also über einige Wege zu einem produktionsbereiten Theme sprechen.
Tailwind CSS zu einem bestehenden Theme hinzufügen
Es gibt zwei Gründe, warum Sie Tailwind CSS zu einem bestehenden Theme hinzufügen möchten, das bereits sein eigenes Vanilla-CSS hat
- Um das Hinzufügen von Tailwind-Komponenten zu einem bereits gestalteten Theme zu experimentieren
- Um ein Theme von Vanilla-CSS zu Tailwind zu migrieren
Wir demonstrieren dies, indem wir Tailwind in Twenty Twenty-One, dem Standard-WordPress-Theme, installieren. (Warum nicht Twenty Twenty-Two? Das neueste Standard-WordPress-Theme dient der Präsentation von Full-Site-Editing und ist keine gute Wahl für eine Tailwind-Integration.)
Zuerst sollten Sie das Theme in Ihrer Entwicklungsumgebung herunterladen und installieren, falls es dort noch nicht installiert ist. Danach müssen wir nur noch wenige Schritte befolgen
- Navigieren Sie im Terminal zu Ihrem Theme-Ordner.
- Da Twenty Twenty-One bereits eine eigene
package.json-Datei hat, installieren Sie Tailwind, ohne eine neue zu erstellen
npm install tailwindcss --save-dev
- Fügen Sie Ihre
tailwind.config.json-Datei hinzu
npx tailwindcss init
- Aktualisieren Sie Ihre
tailwind.config.json-Datei so, dass sie derjenigen im vorherigen Abschnitt gleicht. - Kopieren Sie die bestehende
style.css-Datei von Twenty Twenty-One nachtailwind.css.
Jetzt müssen wir unsere drei @tailwind-Direktiven zur Datei tailwind.css hinzufügen. Ich schlage vor, Ihre tailwind.css-Datei wie folgt zu strukturieren
/* The WordPress theme file header goes here. */
@tailwind base;
/* All of the existing CSS goes here. */
@tailwind components;
@tailwind utilities;
Die Platzierung der base-Schicht unmittelbar nach dem Theme-Header stellt sicher, dass WordPress Ihr Theme weiterhin erkennt und gleichzeitig sicherstellt, dass der Tailwind-CSS-Reset so früh wie möglich in der Datei erscheint.
Das gesamte vorhandene CSS folgt der base-Schicht, wodurch sichergestellt wird, dass diese Stile Vorrang vor dem Reset haben.
Und schließlich folgen die Schichten components und utilities, damit sie Vorrang vor allen CSS-Deklarationen mit derselben Spezifität haben.
Und jetzt, wie bei unserem minimalen Theme, führen wir den folgenden Befehl aus
npx tailwindcss -i ./tailwind.css -o ./style.css --watch
Da Ihre neue style.css-Datei jetzt jedes Mal neu generiert wird, wenn Sie eine PHP-Datei ändern, sollten Sie Ihr überarbeitetes Theme auf geringfügige Rendering-Unterschiede zum Original überprüfen. Diese werden durch den CSS-Reset von Tailwind verursacht, der Dinge ein wenig weiter zurücksetzt, als einige Themes erwarten. Im Fall von Twenty Twenty-One bestand die einzige Korrektur, die ich vorgenommen habe, darin, text-decoration-line: underline zum a-Element hinzuzufügen.
Nachdem dieses Rendering-Problem behoben ist, fügen wir die Header Banner Component von Tailwind UI, der offiziellen Komponentenbibliothek von Tailwind, hinzu. Kopieren Sie den Code von der Tailwind UI-Website und fügen Sie ihn direkt nach dem Link „Skip to content“ in header.php ein

Ziemlich gut! Da wir nun Utility-Klassen verwenden wollen, um einige der bestehenden Klassen mit höherer Spezifität zu überschreiben, die im Theme eingebaut sind, fügen wir eine einzelne Zeile zur Datei tailwind.config.js hinzu
module.exports = {
important: true,
content: ["./**/*.php"],
theme: {
extend: {},
},
plugins: [],
}
Dies markiert alle Tailwind CSS Utilities als !important, damit sie bestehende Klassen mit höherer Spezifität überschreiben können. (Ich habe important nie auf true in der Produktion gesetzt, aber ich würde es fast sicher tun, wenn ich dabei wäre, eine Website von Vanilla-CSS zu Tailwind zu konvertieren.)
Mit einer schnellen no-underline-Klasse, die zum „Learn more“-Link hinzugefügt wurde, und bg-transparent und border-0, die dem Dismiss-Button hinzugefügt wurden, sind wir fertig

Es sieht etwas befremdlich aus, Tailwind UI-Komponenten in ein Standard-WordPress-Theme integriert zu sehen, aber es ist eine großartige Demonstration von Tailwind-Komponenten und ihrer inhärenten Portabilität.
Von Grund auf neu beginnen
Wenn Sie ein neues Theme mit Tailwind erstellen, wird Ihr Prozess dem minimalen Beispiel oben ähneln. Anstatt die Tailwind-CLI direkt über die Befehlszeile auszuführen, möchten Sie wahrscheinlich separate npm-Skripte für Entwicklungs- und Produktions-Builds erstellen und auf Änderungen achten. Möglicherweise möchten Sie auch einen separaten Build speziell für den WordPress-Editor erstellen.
Wenn Sie nach einem Ausgangspunkt jenseits des minimalen Beispiels oben suchen – aber nicht so weit darüber hinaus, dass es eigene vorgegebene Stile mitbringt – habe ich einen Tailwind-optimierten WordPress-Theme-Generator erstellt, inspiriert von Underscores (_s), dem einst kanonischen WordPress-Starter-Theme. _tw genannt, ist dies der Schnellstart, den ich mir gewünscht hätte, als ich Tailwind zum ersten Mal mit WordPress kombiniert habe. Es bleibt der erste Schritt in all meinen Kundenprojekten.
Wenn Sie bereit sind, sich weiter von der Struktur eines typischen WordPress-Themes zu entfernen und Laravel Blade-Vorlagen in Ihr Toolkit aufzunehmen, ist Sage eine großartige Wahl, und sie haben eine Setup-Anleitung speziell für Tailwind, um Ihnen den Einstieg zu erleichtern.
Wie auch immer Sie beginnen, ich ermutige Sie, sich etwas Zeit zu nehmen, um sich mit Tailwind CSS vertraut zu machen und HTML-Dokumente mit Utility-Klassen zu gestalten: Es mag sich anfangs ungewohnt anfühlen, aber Sie werden bald mehr Kundenaufträge annehmen, als zuvor, weil Sie Websites schneller bauen als früher – und hoffentlich, wie ich, mehr Spaß dabei haben.
Vielen Dank, dieser Artikel ist nützlich für mich. Wenn ich eine neue Website beginne, werde ich wahrscheinlich Tailpress verwenden, aber dieser Artikel wäre in anderen Situationen hilfreich, z. B. beim Hinzufügen zu einem bestehenden Theme.
Ich freue mich zu hören, dass Sie ihn nützlich fanden!
Mein Ziel war es, ein minimales Setup zu teilen, sowohl um zu zeigen, wie die einfachste mögliche Integration funktionieren würde, als auch um zu zeigen, was erforderlich ist, um Tailwind zu einem bestehenden WordPress-Theme hinzuzufügen. Ich stimme vollkommen zu, dass es sinnvoll ist, mit einem bestehenden Starter-Theme zu beginnen, wenn man eine neue Website erstellt! Ich habe einen Tailwind-optimierten WordPress-Theme-Generator zu diesem Zweck entwickelt – ich würde mich freuen zu hören, was Sie davon halten, wenn Sie die Gelegenheit haben, ihn auszuprobieren!
Ich habe Tailwind wegen der Menüs und Untermenüs noch nie auf WordPress ausprobiert.
Wie gestalten Sie diese Komponenten, deren HTML normalerweise von einer WordPress-Funktion generiert wird?
Ich werde auch nach Informationen zum Gestalten von Blöcken mit Tailwind suchen, aber ich denke, der einfachste Weg ist, dem typischen Klassen- und @apply-Ansatz für Blöcke zu folgen und dann Tailwind nur mit CSS-Klassen für den Rest zu verwenden.
Als ich zum ersten Mal von Tailwind hörte, hatte ich ganz ähnliche Bedenken. Fast immer (und meine Erfahrung mit Menüs zeigt, dass dies definitiv der Fall ist) können Sie
@applyverwenden, um Komponenten über die Klassen im von WordPress generierten HTML zu gestalten.Gelegentlich finden Sie, dass die benötigten Klassen oder Wrapper-Elemente im generierten HTML fehlen, und an diesem Punkt müssen Sie möglicherweise das generierte HTML über Filter ändern. Das musste ich selten tun, und es kam häufiger bei Plugins als bei WordPress-Kernfunktionen vor.
Sie haben absolut Recht in Bezug auf Blöcke: Ich gestalte sie im Allgemeinen mit
@apply, das auf die vorhandenen Klassen abzielt.Hallo Greg!
Fabelhafter Beitrag von Ihnen, vielen Dank, dass Sie das getan haben.
Ich möchte mich mit Tailwind, Themes und Blöcken beschäftigen. Ich habe mit Kadence als erster gut organisierter Theme-&-Block-Lösung gearbeitet, bei der globale Parameter wie erwartet funktionieren.
Ich spüre heutzutage die Bedeutung von Tailwind. Ist es möglich, mehr Tutorials von Ihnen über Ihren Workflow zu bekommen?
Genauer gesagt
- Mich interessiert die Antwort auf die Frage, wie sich der Designer-Workflow (z.B. Figma) rückwirkend auf Tailwind auswirkt.
- Ich bin daran interessiert zu sehen, wie Sie eine Seite von Grund auf (oder mit Figma) mit Tailwind erstellen.
Bitte lassen Sie mich wissen, ob es YouTube oder etwas Ähnliches gibt, um Antworten zu finden.
Beste Grüße, Alex
Hallo Alex!
Vielen Dank für Ihren Kommentar – ich freue mich sehr zu hören, dass Ihnen der Artikel gefallen hat!
Ich arbeite an weiteren Screencasts für _tw, habe aber nichts unmittelbar anstehendes. (Es gibt ein GitHub-Issue, das ich schließen werde, wenn ich etwas online habe, also könnten Sie das verfolgen, wenn Sie möchten.)
In letzter Zeit hat die meiste meiner Arbeit in Figma begonnen. Ich weiß nicht, ob ich ein einziges Rezept für meinen Ansatz habe, da die Designs, die ich erhalte, sehr unterschiedlich sein können. Ich beginne normalerweise damit, zu entscheiden, welche Teile für den Benutzer im Block-Editor bearbeitbar sein werden und was strukturierte Daten sein werden (mit etwas wie Advanced Custom Fields). Ich neige dazu, nicht zu vertrauen, dass die Ergebnisse einen absolut konsistenten Satz von Farben und Schriftgrößen/Schriftfamilien haben, daher führe ich meine eigene Prüfung durch, anstatt mich auf die im Dateipaket enthaltenen Paletten zu verlassen. (Ihre Erfahrungen können variieren, wie notwendig dies ist.)
Sie würden wahrscheinlich von einem Screencast wie diesem von Tailwind Labs profitieren
Übersetzung eines benutzerdefinierten Designsystems in Tailwind CSS
(Sie haben viele großartige offizielle Screencasts, obwohl meines Wissens nichts Spezifisches für WordPress.)
Ich hoffe, das hilft!
Hallo Greg
Danke für den Artikel, viel großartiger Inhalt hier und ich denke, Sie haben gute Arbeit geleistet, um einige der Hürden für eine vollständig integrierte Erfahrung mit Tailwind CSS und WordPress zu erklären.
Das ist etwas, auf das ich als freiberuflicher Entwickler auch stoße. Ich möchte Tailwind nutzen können, um meine Themes zu erstellen, aber ich möchte mich nicht mit einer Teilmenge von Klassen zufrieden geben müssen.
Das ist einer der Gründe, warum ich mit der Entwicklung von Gust begonnen habe, und ich würde mich freuen, wenn Sie einen Blick darauf werfen und mir sagen würden, was Sie davon halten. Es versucht, die meisten der oben genannten Probleme zu lösen, indem es Entwicklern ermöglicht, Themes mit Tailwind zu erstellen, aber Ihnen auch ermöglicht, einen Drag-and-Drop-Editor zum Erstellen einzelner Seiten mit Tailwind zu verwenden. Es ist gewissermaßen ähnlich wie Tailpress und Ihre Tailwind-Vorlage, die in den obigen Kommentaren erwähnt wurde, aber mit einer tieferen Integration.
Im Moment ist Gust ein Premium-Theme, aber wenn Sie (und andere Leser) eine Demo ausprobieren möchten, können Sie hier die kostenlose Version ansehen hier, die das gleiche Bearbeitungserlebnis bietet, aber einige zusätzliche Funktionen fehlen. Ich hoffe, es gefällt Ihnen!
Prost!
Matt
Hallo Matt,
Vielen Dank für Ihren Kommentar – ich habe mir Gusts Website in der Vergangenheit angesehen, daher bin ich mit Ihrem Projekt definitiv vertraut!
Zur Verwendung einer Teilmenge von Klassen: Meine oberste Priorität ist es sicherzustellen, dass meine Kunden in keiner Weise mit Tailwind-Klassen interagieren. Wenn ich an neuen Seitenlayouts oder Designs arbeite, tue ich das in einer Entwicklungsumgebung und kann dort entsprechende Komponenten erstellen. Mein Ideal ist es, all dies für Kunden transparent zu gestalten, um sicherzustellen, dass sie niemals Klassen jeglicher Art hinzufügen oder entfernen müssen, wenn sie Seiten bearbeiten, sei es durch die Verwendung von Block-Editor-Stilen oder benutzerdefinierten Seiten-Vorlagen für Seiten, die zu viele strukturierte Daten haben, um gut zum Block-Editor zu passen. (Und ich räume ein, dass die Position dieser Grenze stark vom Entwickler abhängt.)
Danke für das Posten der kostenlosen Version Ihres Themes! Ich werde es mir auf jeden Fall ansehen.
Ja, Sie haben absolut Recht, wir wollen nicht, dass Kunden selbst Klassen hinzufügen müssen. Es hängt alles davon ab, wie technikaffin Ihre Kunden sind, aber ich habe festgestellt, dass ich oft die Vorlagen usw. eingerichtet habe, aber der Kunde immer noch selbst Landingpages erstellen oder xyz-Seiten aktualisieren wollte, ohne entweder hartkodiert zu sein oder wieder zu mir kommen zu müssen, um sie zu erstellen. Diese Anforderung hat dazu inspiriert, vorgefertigte Komponenten anzubieten, damit der Kunde nur noch eine Helden-Sektion oder etwas Ähnliches per Drag-and-Drop einfügen kann, ohne mit Klassennamen, Code usw. arbeiten zu müssen. Und mit der Art und Weise, wie wir Gust eingerichtet haben, wird der CSS für all diese Komponenten nicht enthalten sein, es sei denn, die Komponenten werden auf einer Seite verwendet.
Ich fand, dass es ein gutes Gleichgewicht bot, damit der Kunde die Website ohne technisches Wissen bearbeiten konnte und die Website nicht mit ungenutztem CSS überladen wurde, um dies zu ermöglichen.
Wie gesagt, die Grenzen variieren hier von Entwickler zu Entwickler und Ihre Kilometerleistung kann variieren. Ich finde es hilfreich und hoffe, dass es hier auch jemand anderem helfen wird :)
Nochmals vielen Dank!
Hey Matt,
Das ergibt absolut Sinn! Haben Sie Block-Editor-Muster in Ihrer Kundenarbeit verwendet? Ich weiß nicht, ob WordPress Core bereits zu 100 % auf dem Weg ist, dies für die Kundenarbeit nahtlos zu gestalten, aber es kommt sehr, sehr nahe heran.
Nochmals vielen Dank!
Toller Artikel! Ich versuche schon seit einiger Zeit, Tailwind in meinen regulären WordPress-Entwicklungs-Workflow zu integrieren. Dies war hilfreich für die Entwicklung von benutzerdefinierten Themes.
Bei Full Site Editing und Block-Themes benötigte ich jedoch eine einfachere Lösung, die keine Kompilierung erforderte. Daher habe ich dieses Tailwind für WordPress-Plugin erstellt. Aktivieren Sie es einfach, und Sie können TW sowohl auf der Vorder- als auch auf der Rückseite nutzen, ohne Leistungseinbußen, da ich den gesamten generierten CSS zwischenspeichere.
Wenn Sie es ausprobieren und es auch nützlich finden, können Sie es gerne zu Ihrem Artikel hinzufügen!
Ich bin neulich auf Ihr Plugin gestoßen! Es scheint mir, dass für jede URL auf der Website eine separate CSS-Datei generiert wurde – ist das der Fall? Gibt es einen Mechanismus, um den Cache neu zu erstellen, wenn sich ein websiteseitiges Element wie ein Teil des Headers oder Footers ändert und neue Klassen erfordert?
Derzeit nicht, aber das ist eine tolle Idee! Ich werde versuchen, das bald zu veröffentlichen
https://github.com/wpmotto/tailpress/issues/4
Ich untersuche auch die Konsolidierung einiger überlappender Stile über Seiten hinweg, damit nicht zu viel Duplizierung entsteht. Ich werde diese als verlinkte Stylesheets einbinden, damit der Browser die zwischengespeicherten globaleren Stile von TW besser nutzen kann.
Ich werde es auf jeden Fall im Auge behalten! Ich habe das GitHub-Issue zu benutzergenerierten Inhalten gesehen und bin gespannt, wie Sie diesen Teil angehen. Ein böswilliger Benutzer, der Hunderte oder Tausende von Tailwind-Klassen einfügt, um eine sehr große CSS-Datei zu erstellen, ist ein Angriffsvektor, an den ich nie gedacht hätte, da ich Tailwind noch nie auf serverseitigen Seiten ausgeführt habe.
Absolut, daran hatte ich auch nicht gedacht, aber ich habe eine Idee, wie ich das umgehen könnte, also halten Sie Ausschau nach dieser Korrektur in den kommenden Wochen.
vielen Dank
Gibt es eine Möglichkeit, nach Stiländerungen nicht Strg+F5 drücken zu müssen?
Sehr gerne! Abhängig von Ihrer Entwicklungsumgebung sollten Sie in der Lage sein, Browsersync zu installieren, um Sie davor zu bewahren, nach jeder Änderung manuell zu aktualisieren.
Ein kleiner Tipp zur Benutzerfreundlichkeit, da die meisten von uns diesen Tailwind-Befehl nie auswendig lernen werden.
Sie können dies zum „scripts“-Teil Ihrer package.json hinzufügen
Damit können Sie jetzt einfach
npm run watchausführen, um Tailwind zu starten.Viel Spaß beim Codieren!
Hey, netter Blog. Ich bin ein Next.js-Entwickler, der in WordPress-Themes und WooCommerce einsteigen möchte und die Verwendung eines Themes passt nicht zu mir, also hatte ich Schwierigkeiten, eines zu erstellen. Ich werde das ausprobieren.
Großartig, das freut mich sehr zu hören! Ich habe kürzlich eine Next.js-Vorlage in ein WordPress-Theme für die _tw-Website konvertiert, daher habe ich eine frische Perspektive darauf, was in ein Next.js-basiertes Projekt einfließt. Ich hoffe, Tailwind und WordPress funktionieren für Sie!