Unterschied zwischen einem Thema und einem Plugin?

9

Ich bin gespannt, was die spezifischen Unterschiede zwischen einem Thema und einem Plugin sind. Ich verstehe das Wesentliche ... Themen haben mit Look and Feel (HTML / CSS) zu tun und Plugins haben mit dem Hinzufügen von Funktionen (Code / PHP) zu tun. Ein Thema wie das beliebte, von Twitter inspirierte P2 scheint jedoch Funktionen hinzuzufügen ... und nicht nur das Erscheinungsbild zu verbessern. Das macht mich ein bisschen verwirrt. Kann mich jemand bei diesem rockigen Austausch aufklären?

Sehr geschätzt.

Eddie


quelle

Antworten:

13

Themen verwalten die Anzeige und das Layout Ihres Blogs, können aber auch Funktionen hinzufügen.

Plug-Ins erweitern Ihr Blog um Funktionen, können aber auch Elemente zum Layout hinzufügen.

Es gibt viele Überkreuzungen zwischen den beiden, insbesondere wenn Sie bestimmte Plug-Ins mit Themen bündeln möchten. Der größte Unterschied besteht jedoch in den Vorlagen, die Ihre Website verwendet.

Themen

Themen definieren die Vorlagen, die für jede Seite verwendet werden. Im Allgemeinen wird index.phpein Thema für fast alles verwendet. Sie können das aufteilen und ein separates header.phpund footer.phpauch erstellen . Dann können Sie eine hinzufügen sidebar.php. Ich bin sicher, Sie haben mindestens diese vier Dateien schon einmal gesehen - eine zum Definieren der Kopfzeile, eine zum Definieren der Seitenleiste, eine zum Definieren der Fußzeile und eine zum Definieren aller Dateien und Positionieren um den Hauptinhalt.

Außerdem können Sie festlegen single.php, dass ein einzelner Beitrag, page.phpeinzelne Seiten usw. formatiert werden sollen.

Wenn Ihre Site geladen wird und eine Seite oder ein Beitrag angefordert wird, leitet WordPress die Anforderung an die von Ihrem Thema definierte Vorlagendatei weiter. Dann weiß es, wie man Dinge auf der Seite anordnet. Traditionell dienen Themen nur dem Layout.

Plugins

Plug-Ins hingegen können zusätzliche Elemente hinzufügen, die von den Themen und anderswo verwendet werden. Ein Plug-In kann eine Facebook-Like-Schaltfläche hinzufügen, die Ihr Thema dann zu Posts und Seiten hinzufügen kann. Ein anderes Plug-In kann Ihrem Admin-Dashboard ein Widget für den Zugriff auf und die Verwaltung Ihres Google Reader-Feeds hinzufügen. Dies spiegelt sich nicht im Layout Ihrer Website wider, bietet jedoch zusätzliche Funktionen. Ein weiteres Plug-In kann automatisch auf Twitter posten, wenn Sie einen neuen Beitrag veröffentlichen.

Themen können Funktionen hinzufügen, die in direktem Zusammenhang mit dem Layout und der Leistung Ihrer Website stehen. Plug-Ins können Funktionen in WordPress erweitern - Funktionen, die auch von einem Thema verwendet werden können.

EAMann
quelle
Ein bisschen spät, aber was ist mit benutzerdefinierten Klauseln und Abfragen. Wären diese Teil des Themas oder eines Plugins?
Manny Fleurmond
Nicht sicher, was Sie unter benutzerdefinierten Klauseln verstehen, aber benutzerdefinierte Abfragen würden / sollten von Plugins behandelt werden. Wenn Sie einen MVC-Ansatz wählen, stellen Sie sich WordPress selbst als das Modell (und die zugrunde liegende Datenzugriffsschicht), das Thema, das die Ansicht bereitstellt, und Plugins (zusätzlich zu bestimmten Teilen von WordPress), die den Controller bereitstellen, vor.
EAMann
Eine mögliche Interpretation des oben Gesagten ist, dass Themen Seiten definieren, einzelne Blöcke und Vorlagen jedoch mithilfe von Plugins erstellt werden. Dies ist falsch, da dies impliziert, dass Plugins == Template Partials sind oder dass Plugins Widget-Vorlagen sind, was nicht stimmt. Können Sie die Antwort bearbeiten, um klarer zu machen, dass Plugins für Logik und Themen für Markup / Visuals sind?
Tom J Nowell
2

Stellen Sie sich so vor! Das Thema definiert die Hauptstruktur für die gesamte Website! Das Thema ist so etwas wie eine Struktur für einen Beitrag, eine Seite oder einen benutzerdefinierten Beitragstyp, eine benutzerdefinierte Seite, ..! Bisher wissen Sie, dass das Thema wirklich HTML-Code ist! Am Ende von Wordpress excute wird HTML-Code an den Browser zurückgegeben und die Browseranzeige für Sie! Dieser HTML-Code basiert auf einer Themendatei (index.php, header.php, footer.php, single.php).

Plugins verwenden Hook & Filter, um das Thema zu ändern, bevor wir es im Browser ausgeben!

Beispiel: Wenn Sie am Ende des Beitrags soziale Schaltflächen hinzufügen möchten! Sie können single.php ändern und Code hinzufügen, um einen sozialen Button direkt unter the_content () zu platzieren!

Sie können jedoch ein Plugin erstellen, um mithilfe von Wordpresss Filter & Hook den HTML-Code des Posts zu ändern und soziale Schaltflächen anzuhängen!

Sie können Hook verwenden, um Javascript hinzuzufügen, Logikcode zu erstellen, dann HTML basierend auf diesem Ergebnis zu rendern und dann über Wordpresss Hook & Filter etwas hinzuzufügen oder durch etwas zu ersetzen!

Aber was passiert, wenn Sie Plugin-Code in die Themendatei einfügen? Angenommen, Sie haben einige Funktionen zum Rendern von Inhalten in die Datei functions.php des Themas eingefügt! Rufen Sie diese Funktionen dann manuell irgendwo in Ihrem Thema auf! Oder noch besser, Sie können Hook & Filter verwenden, um Inhalte automatisch zu ändern, ohne das Thema manuell aufzurufen!

So lange WordPress Ihren Code irgendwie einschließen und ausführen kann! Solange Ihr Code ausgeführt wird, kann er mithilfe von Hook & Filter alles für Sie tun! Einige einfache Plugins lassen sich ganz einfach in eine Themendatei einfügen! Aber einige große Plugins sind zu aufgebläht, um sie in eine Themendatei zu schreiben!

Dann später entscheiden Sie sich, diese Funktion zu entfernen, gehen Sie zur Themendatei und entfernen Sie den Code? Klingt dumm, oder? Wir haben also ein Plugin, mit dem Sie den laufenden Prozess von Wordpress automatisch ändern können, um Inhalte zu ändern, die Datenbank zu ändern, ...

Darüber hinaus werden einige Hooks vor dem Aufruf des Themas ausgeführt, sodass Sie das Thema nicht in die Themendatei einfügen können!

Schlussfolgerungen: Solange Ihr Code in WordPress enthalten ist, führt WordPress ihn aus und gibt dann das Ergebnis zurück! Sie können diesen Code in Themendateien einfügen, WordPress ruft ihn für Sie auf! Wenn Sie es jedoch als Plugin verpacken, können Sie es einfach installieren / deaktivieren / entfernen, ohne Themendateien zu ändern! Außerdem halten Sie Ihr Thema einfach / sauber! Wenn Sie also etwas ändern müssen, setzen Sie es wenn möglich als Plugin ein! Legen Sie es nicht in Themendateien!

Kureikain
quelle
0

Einige grundlegende Unterschiede zwischen Plugin und Theme sind:

  • Plugins finden Sie im Verzeichnis wp-content / plugins Ihrer WordPress-Site. Themen finden Sie im Verzeichnis wp-content / themes.

  • Jede WordPress-Website enthält verschiedene Plugins. Eine Website hat jedoch nur ein aktives Thema.

  • Wenn Sie das Thema auf Ihrer Website ändern, können Sie die Funktionen des alten Themas nicht verwenden. Die Installation eines neuen Plugins wirkt sich jedoch nicht auf andere aktive Plugins auf der Website aus.

Solwin Infotech
quelle