Entwicklung & Design

Das eigene WordPress-Theme erstellen – #7: Die Sidebar und der Footer

In dieser Serie geht es darum, ein WordPress-Theme zu erstellen – von Grund auf. Der siebte Teil beschäftigt sich mit der Sidebar für die Blog-Ansicht sowie dem Footer-Bereich des Themes.

Nachdem wir uns im letzten Teil um die Übersetzungsfähigkeit des Themes gekümmert haben, müssen wir uns nun um die Standard-Sidebar sowie den Footer kümmern. Wenn wir auf die index.php zurückblicken, endet die Datei mit folgenden zwei Zeilen:

<?php get_sidebar();
get_footer();

Die Sidebar in der sidebar.php

Diese beiden Funktionen arbeiten nach demselben Prinzip wie get_header() – sie binden die sidebar.php beziehungsweise footer.php ein. Wir möchten auf den meisten Seiten, außer der Einzelansicht einer Galerie, eine ganz normale Sidebar einbauen. Unsere sidebar.php sieht so aus:

<aside id="sidebar" role="complementary">
<div id="sidebar-content">
<?php if ( is_active_sidebar( 'sidebar-1' ) ) {
dynamic_sidebar( 'sidebar-1' );
} ?>
</div>
</aside>

Wir packen die Sidebar in ein aside-Element und ein div. Mit der is_active_sidebar()-Funktion prüfen wir, ob die Sidebar mit dem Bezeichner sidebar-1 aktiv ist. Wenn das der Fall ist, geben wir sie mit der dynamic_sidebar()-Funktion aus, der wir wieder den eindeutigen Bezeichner der Sidebar als Parameter übergeben. Um die Registrierung der Sidebar in der functions.php werden wir uns im nächsten Teil kümmern – gemeinsam mit der Registrierung des Menüs.

Der Footer des WordPress-Themes

Kümmern wir uns jetzt um die footer.php:

</div>
<?php get_sidebar( 'footer-top' );
get_sidebar( 'footer-bottom' );
wp_footer(); ?>
</body>
</html>

Wir möchten in unserem Footer zwei Widget-Bereiche – also quasi Sidebars – unterbringen. Dafür nutzen wir wieder die get_sidebar()-Funktion, übergeben aber als Parameter den Slug für die Datei. get_sidebar( 'footer-top' ); bindet die Datei sidebar-footer-top.php ein, der zweite Aufruf mit dem Parameter footer-bottom entsprechend die Datei sidebar-footer-bottom.php. Vor dem schließenden body-Tag müssen wir noch die wp_footer()-Funktion aufrufen. Hier werden dann Skripte ausgegeben, die am Ende der Seite eingebunden werden sollen.

Kommen wir nun noch zu den beiden Widget-Bereichen des Footers. Die sidebar-footer-top.php hat den folgenden Inhalt:

<footer id="footer" role="contentinfo">
<?php
if ( is_active_sidebar( 'footer-widget-area-top' ) ) { ?>
<aside id="footer-top" class="clearfix">
<?php dynamic_sidebar( 'footer-widget-area-top' ); ?>
</aside>
<?php
}

Wir öffnen zuerst das footer-Element. Danach prüfen wir, ob die Sidebar footer-widget-area-top aktiv ist und nutzen dafür wieder die is_active_sidebar()-Funktion. Wenn die Sidebar mindestens ein Widget enthält, wird innerhalb eines aside-Elements die Sidebar ausgegeben. Und das war’s auch schon.

Die sidebar-footer-bottom.php ist ähnlich übersichtlich:

<?php
if ( is_active_sidebar( 'footer-widget-area-bottom' ) ) { ?>
<aside id="footer-bottom" class="clearfix">
<?php dynamic_sidebar( 'footer-widget-area-bottom' ); ?>
</aside>
<?php
}
?>
<p class="theme-author"><?php _e( 'Theme: Bornholm by <a rel="nofollow" href="http://florianbrinkmann.de">Florian Brinkmann</a>', 'bornholm' )?></p>
</footer>

Hier prüfen wir, ob die Sidebar footer-widget-area-bottom aktiv ist. Wenn das der Fall ist, geben wir auch diese Sidebar aus. Direkt vor dem schließenden footer-Element platzieren wir noch einen Hinweis auf den Ersteller des Themes.

Im nächsten Teil werden wir dann die Grundeinstellungen in der functions.php vornehmen, wie etwa Sidebars und Menüs registrieren, damit sie im Backend auch genutzt werden können.

Das Theme auf GitHub

Den aktuellen Stand des Themes findet ihr wie immer im GitHub-Repository zu der Artikelserie. Den Stand des Themes nach diesem Teil gibt es im Tag v0.5.

Die weiteren Teile unserer WordPress-Reihe:

Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Ein Kommentar
Schnaeppchenfieber
Schnaeppchenfieber

Danke für die Infos! Musste auch gerade Widgets in meinen Footer einbauen, da kam der Artikel gerade recht :)

Antworten

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!

Hey du! Schön, dass du hier bist. 😊

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team bestehend aus 65 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Danke für deine Unterstützung.

Digitales High Five,
Stephan Dörner (Chefredakteur t3n.de) & das gesamte t3n-Team

Anleitung zur Deaktivierung