DIY WordPress Theme Framework Teil 1 Definieren Sie Ihre Bedürfnisse

Eines der besten Dinge an meiner Ausbildung an der University of Scranton war die wiederkehrende Lektion, über die wir gelernt hatten Wiederverwendung. Die Wiederverwendung ist aus vielerlei Gründen beim Programmieren unglaublich wichtig: Einfacheres Testen, Zeitersparnis, Konzentrationsfähigkeit auf fortgeschrittenere Dinge usw. Nach meinem Abschluss und dem Eintritt in die wunderbare Welt der Vollzeit-Freiberufler entschied ich, ob ich weitermachen würde Bei WordPress-Arbeit würde ich diese Wiederverwendungslektionen in meinem Alltag anwenden müssen. Nummer eins auf meiner Liste war ein einfaches WordPress-Theme-Framework.

Der erste Artikel dieser Serie unterscheidet sich ein wenig von den anderen auf dieser Website. In diesem Artikel möchte ich Ihnen die Lektion vermitteln, die ich über Wiederverwendung und Definition Ihrer Bedürfnisse gelernt habe. Ich werde Ihnen im nächsten Artikel meinen Rahmen zur Verfügung stellen, aber es ist eine Tatsache, dass jeder anders codiert und was ich anbiete, möglicherweise nicht Ihren Bedürfnissen am besten entspricht!


Einige Prinzipien der Wiederverwendung, um im Auge zu behalten

Jeder, der über eine formale Ausbildung in Informatik oder Software Engineering verfügt, kann bezeugen, dass es unzählige Theorien, Bibliotheken und Klassen gibt (Programmierkurse, nicht Schulklassen), die einigen sehr fortschrittlichen Formen der Wiederverwendung und generischen Programmierung gewidmet sind. Ich denke, das ist ein Overkill für ein Theme-Framework, aber es gibt einige Prinzipien, die ich bei der Erstellung meiner einhalten wollte:

"Durch Tests wird sichergestellt, dass Ihr Code funktioniert, bevor Sie ihn 5, 10 oder 20 Mal implementieren."

  • Entwerfen Sie Ihren Code: Wenn ich über WordPress spreche, impliziert Design normalerweise das Front-End-Design, aber es ist genauso wichtig, den Code zu entwerfen. Legen Sie fest, was Ihre Funktionen, Klassen und Seiten sein sollen, bevor Sie mit dem Codieren beginnen.
  • Verallgemeinern, wenn möglich: Möglicherweise ist das wichtigste Prinzip, zu erkennen, wann Sie Code-Snippets wiederverwenden, und sie in Funktionen zu generalisieren. Dadurch wird die Verwaltung und Aktualisierung Ihres Codes erheblich vereinfacht.
  • Dokumentieren und testen Sie gründlich: Dies ist etwas, was Sie mit allem Code tun sollten, besonders aber Code, den Sie häufig wiederverwenden möchten. Die Dokumentation hilft Ihnen dabei, sich daran zu erinnern, was Sie 6 Monate oder ein Jahr später gedacht haben. Durch Tests wird sichergestellt, dass Ihr Code funktioniert, bevor Sie ihn 5, 10 oder 20 Mal implementieren.

Definieren Sie Ihre Bedürfnisse

Jetzt, da wir einige Dinge im Auge behalten haben, müssen wir definieren, was unser Rahmen erreichen soll. Denken Sie daran, dass jeder von uns seine eigenen Bedürfnisse hat, und während ich über meine sprechen werde, sind Ihre vielleicht anders. Meine Bedürfnisse waren anfangs ziemlich einfach: Ich wollte ein einfaches Framework, das meine ursprüngliche Arbeit für mich erledigte.

Bei der Erstellung von WordPress-Designs für meine Kunden fiel mir auf, dass mein Prozess derselbe war: Kopieren Sie K2 (das Standarddesign zu dieser Zeit), entfernen Sie das, was ich nicht verwenden wollte, und ersetzen Sie es durch meinen Code. Ein Großteil meines Codes war ähnlich: derselbe CSS-Reset, die gleiche CSS-Struktur, der gleiche Stilheader, die Navigation usw. Nach einer Weile war es einfacher, nur das Thema meines letzten Kunden zu kopieren und daraus zu bauen. Dann entschied ich mich, mein eigenes Framework aufzubauen.

"Wir müssen definieren, was unser Rahmen erreichen soll"

Nach dieser Entscheidung musste ich meine Bedürfnisse definieren: Was habe ich immer wieder getan und was könnte ich verallgemeinern. Meine Liste von Anforderungen war so:

  • Plugable CSS: Es gibt mehrere Teile meines CSS, die sich selten ändern. Dazu gehören WordPress-Klassendefinitionen, mein CSS-Reset, einige allgemeine Klassen, die ich verwende (.hide, .left, .right, .clear usw.) und (normalerweise) meine IE-Fixes. Wenn ich das alles abstrahieren könnte, müsste ich lediglich eine site-spezifische CSS-Datei (die nach dem einfachen CSS-Framework von Dan Cederholm als master.css bezeichnet wird) dumpen, und ich weiß, dass alles andere ordnungsgemäß funktionieren würde.
  • Konstanten für die Design-URL und die Bildpfade: Dies sind 2 Variablen, die ich für jedes Thema benötige. Wenn ich sie leicht irgendwo definieren könnte, muss ich mich nicht darum kümmern, die URLs für jede von mir erstellte Website zu ersetzen.
  • Allgemeine WordPress-Funktionalität: Dies sind die Menüs, Definitionen der Seitenleiste und alles, woran ich denken könnte, das ich immer und immer wieder tippen würde.
  • Allgemein definierte Vorlagenseiten: Die allgemeinen Themenseiten (Kopfzeile, Fußzeile, Index) enthalten genug, um sie nützlich zu machen, aber nicht so sehr, dass ich das Thema jedes Mal ändern muss, wenn ich ein neues Thema entwickle.
  • Gemeinsame Ordner: Ich habe immer einen Bilderordner, einen css-Ordner und einen css / img-Ordner. Ich musste diese auch einschließen.
  • Leicht: Es muss leicht sein. Ich möchte keine Seiten und Codeseiten durchforsten, um zu finden, was ich will. Meiner Meinung nach ist WordPress selbst ein komplexes Framework. warum ein zweites komplexes Framework aufbauen?

Ich wollte auch einige Funktionen für Funktionen auf mehreren Seiten erstellen, z. B. die "Seite nicht gefundene Nachricht" und die Postseitennavigation. Dies geht auf die Mentalität zurück, dass eine einzelne Funktion mir hilft, mehrseitige Funktionen schneller zu ändern.


Sehen Sie, was bereits da draußen ist

Das Tolle an Open-Source-Software: Wenn Sie etwas benötigen, ist dies wahrscheinlich bereits erledigt. Das Gleiche gilt für Frameworks. Es gibt Dutzende von Frameworks da draußen, also bevor Sie loslegen, um Ihr eigenes zu entwickeln, lohnt es sich definitiv, zu überprüfen, was bereits da ist. Der Zweck ist, Zeit zu sparen, richtig? Es gibt keinen besseren Weg, um Zeit zu sparen, als sich überhaupt nicht entwickeln zu müssen!


Thematic von ThemeShaper ist ein sehr beliebter Rahmen

Um Ihnen zu helfen, habe ich eine kurze Liste von Frameworks zusammengestellt, die ich zumindest angeschaut habe (obwohl die meisten von ihnen tatsächlich verwendet wurden):

  • Thematisch
  • These
  • Carrington
  • Genesis
  • Atahualpa
  • Aus dem WordPress-Codex

Berücksichtigen Sie beim Erkunden dieser Frameworks Ihre Anforderungen. Testen Sie diese ordnungsgemäß: Herunterladen, Installieren, Aktivieren. Versuchen Sie dann, ein untergeordnetes Thema zu erstellen und mit den Einstellungen zu spielen. Sehen Sie, was Sie finden. Dann treffen Sie Ihre Entscheidung.

Für mich waren die, die ich ausprobierte, zu komplex und nicht leichtgewichtig. Sie sind ideal für Leute, die schnell ein Thema benötigen, aber was das Anpassen angeht, musste ich ein ganz neues System lernen, um Themen zu erstellen. Wie ich schon sagte: Ich kenne bereits das komplexe Framework / die API von WordPress. Ich muss dieses Wissen durch ein Framework / eine API eines anderen Themes ersetzen. Ich entschied mich für meine eigenen, die WordPress-Funktionen weiterhin verwenden würde, anstatt sie zu ersetzen.


Fazit

Ich bin mir sicher, dass Sie zu Beginn dieses Artikels die Vermutung haben könnten, dass die unausweichliche Schlussfolgerung darin besteht, dass wir unseren eigenen Rahmen ausbauen. Wir haben unsere Grundsätze und Anforderungen und wir haben unsere Forschung durchgeführt. Wir sind bereit, ein Framework zu erstellen, das wir nächstes Mal tun werden!

Das Letzte, zu dem ich Sie einlade, ist das, was ich hier gesagt habe: Was sind Ihre Prinzipien und Anforderungen? Verwenden Sie eines der hier genannten Frameworks oder haben Sie bereits ein eigenes Framework entwickelt? Lass uns wissen!

In der nächsten Sitzung dieser Serie werden wir diese Prinzipien auf den ersten Arbeitstag an unserem neuen Rahmen anwenden!