Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

WordPress-Themes mit Bootstrap

Theme-Optionen bereitstellen

Testen Sie unsere 2017 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Theme-Optionen können für WordPress-Administratoren bereitgestellt werden. Damit haben diese die Möglichkeit, globale Einstellungen vorzunehmen, ohne hierfür den Quellcode des Themes ändern zu müssen.
07:31

Transkript

Manchmal hat man Einstellungen für ein Theme, die möchte man nicht unbedingt im Quelltext vornehmen, sondern man möchte dem Redakteur oder der Redakteurin die Möglichkeit geben, hier gemütlich auf Design zu klicken und dann auf Optionen zu gehen und dann beispielsweise Angaben zur Lizenz, also zum Beispiel eine CC-BY 3.0 Lizenz zu vergeben, oder auch hier einen Google Analytics Code zu speichern. Wie wir das machen und wie wir auf diese Optionen in unserem Theme zugreifen, das zeige ich Ihnen jetzt in diesem Video. Zunächst einmal gehe ich in die Datei functions.php und hier habe ich einen neuen Codeblock eingefügt. Den finden Sie hinter dem Kommentar Theme-Optionen. Wir müssen zunächst einmal zwei Dinge machen. Das passiert hier oben bei add_action. Zum einen müssen wir in dem Moment, in dem das Administrationsmenü initialisiert wird, also bei admin_init müssen wir sagen: ich möchte für mein Theme eigene Optionen bereitstellen. Das heißt, ich gebe hier zunächst einmal meinen Huck an, also der Moment, in dem hier etwas passiern soll. admin_init und hier sage ich dann, wo diese Funktion genau definiert ist. theme_options_init, das hier ist ein frei von mir vergebener Name. Damit registriere ich erst einmal diese Settings, berge_options, theme_options und validate_options. Diese 3 Argumente muss ich übergeben. Schauen wir uns das mal etwas genauer an, register_setting. Wenn ich hier in das Codex gehe, dann sehen Sie, habe ich hier 3 Möglichkeiten, die ich angeben muss. Die ersten beiden sind unbedingt notwendig. Der dritte ist optional. Die option_group, der option_name und sanitize_callback. Schauen wir uns an, was das genau bedeutet. option_group, berge_options, das ist einfach ein Name, den wir vergeben, den habe ich frei vergeben und dieses berge_options, das finden wir später wieder, wenn ich auf diese Settings zugreifen möchte. Als zweites vergebe ich einen Namen. berge_theme_options, das ist der Name, unter dem ich später diese Optionen tatsächlich abspeichere und mit dem ich dann auch wieder darauf zugreifen darf. Dieses sanitize_callback, das ist eine Funktion, die habe ich hier vergeben: berge_validate_options. Wenn ich hier runter gehe, dann ist es eine ganz einfache Funktion, die bekommt einen Wert-Input. Und ich kann über diesen Wert dann zum Beispiel einen Filter legen, in dem Fall den wp_filter_nohtml_cases. Das bedeutet, dass man im Feld copyright, das wir hier gesehen haben, dass hier keine HTML tags erlaubt sind und wenn ich das hier reinschreibe, dann wird es automatisch hier herausgenommen. Für Google Analytics gilt das natürlich nicht, weil wir da mit HTML arbeiten müssen, aber hier wird es dann automatisch herausgenommen und das passiert eben in dieser Funktion sanitize. Das ist der erste Teil. Wir müssen also diese Optionen grundsätzlich erstmal bereitstellen und wir müssen im zweiten Fall, dann natürlich auch eine Page, eine option_page in WordPress erzeugen. Das mache ich mit admin_menu. Also in dem Moment, in dem das Adminmenü im WordPress Backend ausgegeben wird, da soll eine Funktion aufgerufen werden und der habe ich hier den Namen theme_options_add_page gegeben und die wird genau hier aufgerufen. Was macht diese Funktion? Die macht nichts anderes, als eine neue Seite im Bereich Theme, also im Bereich Design hier hinzuzufügen. Und dieses add_theme_page, schauen wir uns das mal an, wie das genau aufgebaut ist. Wir vergeben einen page_title, einen menu_title, capability, menu_slag und function. Was bedeutet das im Einzelnen? Zunächst einmal habe ich hier ein page_title_optionen, das ist das, was ich hier oben gerade sehe. Ich habe hier einen Bereich für das Menü, das ist das, was ich hier direkt sehe, ich könnte das auch anders nennen, das muss nicht Optionen heißen, ich kann es auch Einstellungen nennen. Capability, das war der dritte Wert. Das bedeutet, welcher WordPress Nutzer kann auf diese Optionen zugreifen. In dem Fall ist es nur ein WordPress Nutzer, der auch die Erlaubnis hat, von seiner Rolle her die Theme-Optionen zu bearbeiten. Und dann habe ich als vierten Bereich, wenn wir es uns nochmal anschauen, menu_slug und function. menu_slug ist das, was Sie hier oben sehen, genau dieses theme-optionen. Das habe ich hier als viertes angegeben. Und dann gebe ich als letztes hier noch den Namen einer Funktion an, berge_theme_options_page und die definiere ich hier und die eigentliche Musik, die spielt sich dann tatsächlich hier drinnen ab. Wenn wir uns diese Funktion mal genauer anschauen, dann sehen Sie, habe ich hier einen Bereich div_class="updated fade". Dann, wenn diese Settings upgedated worden sind, steht hier Einstellungen gespeichert. Das Ganze faded dann auch automatisch aus. Ich habe hier ein Formular. Dieses Formular hat verschiedene Bereiche. Hier habe ich dieses Copyright. Ich übergebe hier dieses $options copyright und später dieses $options analytics und mit esc_attr_e sorge ich dafür, dass das Ganze innerhalb von diesem value Attribut stehen kann, ohne dass hier zu viele Anführungszeichen ausgegeben werden. Das Ganze schließe ich ab mit einem submit Button und somit sorge ich dafür, dass ein Administrator hier diese Einstellungen vornehmen kann. Das Ganze soll hier noch mit einem screen_icon vorgesehen werden, Theme-Optionen für und dann sage ich hier diesen bloginfo ('name') und so weiter. Das kann ich hier dann nochmal so gestalten, wie ich das Ganze möchte. Was wir als nächstes jetzt machen müssen ist, wir müssen natürlich mit diesen Informationen in unserem Theme auch umgehen, das heißt wir gehen jetzt mal in die Datei footer.php und jetzt möchte ich, wo ich normalerweise links unten die Beschreibung meines Blogs habe, möchte ich hier jetzt noch die Angabe zum Copyright machen. Dazu gehe ich zunächst einmal in den php Modus. Schaue, dass ich mich nicht vertippe hier und mit dem Befehl get_option hole ich mir die Option und dann sage ich berge_theme_options. Das ist genau der Name, den ich bei register_settings bereits schon angegeben habe. Das ganze speichere ich dem assoziativen Array $options und jetzt kann ich das hier ausgeben wie ich möchte. Ich schreibe dann einfach ein $options und dann dieses Copyright. Das ist eben der Eintrag für diese eine Option. Wenn ich das Ganze jetzt hier abspeichere und mir draußen mal in meinem Front-End anschaue und bis ganz nach unten scrolle, dann habe ich genau hier dieses CC-BY 3.0. Ich kann also mit diesem Befehl get_option auf die Optionen meines Themes zugreifen, ich kann sie entweder ausgeben oder ich kann natürlich auch eine if Schleife machen und beispielsweise sagen: wenn der Nutzer hier einen Hacken gesetzt hat, dann soll eine spezielle CSS-Datei eingebunden werden, ansonsten eben eine andere. Das bedeutet zusammengefasst, mit diesen beiden add_actions, admin_init und admin_menu, kann ich zum einen die Optionen registrieren, dann kann ich eine theme_page erstellen und später kann ich dann mit get_option auch auf diese Informationen zugreifen und mich in meinem Verhalten entsprechend dann anpassen.

WordPress-Themes mit Bootstrap

Verwirklichen Sie Ihre eigenen Designvorstellungen bei Ihrem Webauftritt und sehen Sie, wie Sie WordPress-Seiten über Plug-ins und Themes wie z.B. Bootstrap erweitern können.

2 Std. 33 min (39 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!