ACF Plugin im eigenen Theme oder Plugin als Framework einbetten
Advanced Custom Fields ist ein mächtiges Werkzeug um WordPress einfach und schnell mit benutzerdefinierten Feldern zu erweitern. Die Möglichkeiten individuelle Plugins, Themes oder einfach nur eigene Erweiterungen zu erstellen sind dabei unendlich.
Warum ACF als Framework für Plugins oder Themes verwenden?
ACF ist eines der erfolgreichsten WordPress Plugins aller Zeiten und weltweit schon millionenfach in Verwendung. Schon das allein ist Grund genug, ACF als Basis für die Entwicklung von Themes und Plugins zu nutzen. Ein weiterer Vorteil liegt darin, dass Themes und Plugins durch Dritte einfach zu erweitern sind. Indem die Basis durch zusätzliche Feldgruppen individuell nach Kundenwunsch angepasst werden kann.
Darf ich Advanced Custom Fields in meinen Plugin oder Theme inkludieren?
Ja und Nein. Elliot Condon, der Entwickler von ACF, hat für diesen Fall ganz klare Regeln. Das freie Plugin darf nicht eingebettet und als Basis für zum Verkauf stehende Plugins oder Themes verwendet werden. Haben wir jedoch eine Entwicklerlizenz für die Pro-Version von ACF, haben wir die Privilegien das Plugin als Framework für Premium-Themes und Plugins zu verwenden.
Hier findest du die Bedingungen für die Verwendung von ACF in deinem Premium-Theme oder Plugin.
Wie kann ich ACF einbetten?
Das folgende Beispiel zeigt wie wir ACF in unser WordPress Plugin als Framework einbetten können. Falls wir es in einem Theme inkludieren, müssen wir den Pfad zum ACF Plugin natürlich abändern.
Lade zunächst die aktuellste Version von ACF Pro herunter und kopiere das entpackte Plugin-Verzeichnis in dein eigenes Plugin oder Theme. Dann fügst du den folgenden Code-Schnipsel in einer deiner Plugin-Dateien ein und änderst den Pfad zum Zielordner, worin sich ACF nun in deinem Plugin-Paket befindet:
Nun schreiben wir die folgende ACF-Filter-Funktion acf/settings/url
in unsere Plugin- oder Theme-Dateien und definieren darin den Pfad zum Zielordner des eingebetteten ACF-Plugins:
Das war es schon. Wir haben nun die Grundlage erstellt, dass ACF als Framework in unserem Plugin oder Theme funktioniert. Optional könnte man noch den ACF Plugin Administrations-Menüpunkt im WordPress für den Nutzer verstecken.
Wichtiger Hinweis: Wenn wir ACF in unserem Plugin oder Theme inkludiert haben, muss der Nutzer das Plugin von Advanced Custom Fields Pro nicht mehr manuell installieren. Das hat den Vorteil, der der Nutzer nicht ständig über neue Updates von ACF informiert wird, sobald diese verfügbar sind.
Weiterhin zu beachten ist auch, dass eine zusätzliche Abfrage erstellt werden sollte, die prüft ob der Nutzer bereits ACF oder ACF Pro als Plugin manuell installiert hat bzw. herauszufinden, falls er dies zukünftig noch tut. Denn wenn ACF manuell installiert ist und der Nutzer eine andere Plugin-Version verwendet, als die wir in unserem Theme oder Plugin eingebettet haben, könnte es zu Kompatibilitätsproblemen kommen. Aus diesem Grund sollte man zusätzlich eine Abfrage integrieren, die für diesen Fall einen WordPress Admin-Hinweis anzeigt und den Nutzer darüber informiert.