ACF Optionsseiten im WordPress Admin-Bereich hinzufügen
Wenn wir Advanced Custom Fields Pro in unserer WordPress-Umgebung verwenden oder ACF als Framework für unser Plugin oder Theme eingebettet ist, bietet sich die Möglichkeit eigene Optionsseiten im WordPress Backend anzulegen. Das hat den Vorteil, dass wir alle unsere Optionen auf einer separaten Administrationsseite, versammelt unter einem Menüpunkt anzeigen lassen können.
Wie kann ich eigenen ACF Optionsseiten einfügen?
ACF bietet dafür bereits integrierte Funktionen wie acf_add_options_page()
und acf_add_options_sub_page()
, um die Erstellung von benutzerdefinierten Optionsseiten in WordPress so einfach wie möglich zu gestalten.
- acf_add_options_page() erstellt ein Hauptmenü-Element in der linken Hauptnavigation von WordPress
- acf_add_options_sub_page() erstellt ein Untermenü-Element zum zugewiesenen Hauptmenü-Element in der linken Hauptnavigation von WordPress
Die folgende Funktion ist ein Beispiel dafür, wie wir eine ACF Optionsseite mit dem zugehörigen Hauptmenü-Element in der WordPress Admin-Navigation einbinden können. Zudem fügen wir zwei weitere Untermenü-Elemente hinzu die dem Hauptmenü-Element untergeordnet sind:
Je nach Bedarf und Notwendigkeit können wir weitere ACF Optionsseiten mit deren dazugehörigen WordPress Adminmenü-Elementen hinzufügen und unsere Theme und Plugin Einstellungen dort speichern.
Wie verbinde ich Feldgruppen mit einer benutzerdefinierten ACF Optionsseite?
Eine benutzerdefinierte ACF Optionsseite muss immer erst auf den oberen Weg definiert und in den Theme oder Plugin-Dateien gespeichert werden, damit diese Optionsseiten im ACF Plugin zur Auswahl stehen. Im WordPress Backend gehst du anschließend auf die ACF Plugin-Seite „Individuelle Felder“ und wählst „Erstellen“ um eine neue Feldgruppe anzulegen.
Dort wählst du in der Metabox „Position“ in der ersten Auswahlbox „Options-Seite“ aus, die zweite Auswahlbox bleibt auf „ist gleich“ stehen und für die dritte wählen wir eine Optionsseite aus, welche wir über den oberen Weg in unseren Plugin oder Theme-Dateien definiert haben.
Wie kann ich ein ACF Optionsfeld in den Templates ausgeben?
Abweichend zur gewohnten Verwendung von get_field(), welche wir für die Ausgabe von ACF Feldwerten innerhalb Beiträgen oder Seiten nutzen, müssen wir der Funktion den weiteren Wert „option“ anhängen um den Wert eines ACF Feldes zu erhalten, welcher auf den Optionsseiten gespeichert ist. Das würde dann wie folgt aussehen: