Modular: WordPress Code-Schnipsel zukunftssicher einbinden

Oft wird die eigene WordPress-Site mithilfe von Code-Schnipseln in der functions.php erweitert.

Beim nächsten Update des Themes oder beim Wechsel auf ein anderes Theme gehen zum einen die hinzugefügten Funktionen verloren, zum anderen steigt der Wartungsaufwand ins unermessliche. 

Ein Plugin schafft Abhilfe und bringt dir modulare Verwaltung deiner Code-Snippets.


Vorwort: Darum gehören Code-Snippets oder Extra-Funktionen nicht in die functions.php

Spätestens beim Theme-Update oder beim Umzug auf ein neues WordPress-Theme ist der Ärger groß: Alle in der alten function.php hinzugefügten Funktionen sind weg. Aber nicht nur das: Wer ständig Funktionen hinzufügt, verliert schnell den Überblick.

Die Einbindung zusätzlicher Funktionen in die functions.php deines WordPress-Themes ist nicht nur nicht zukunftssicher, sondern auch schlichtweg unübersichtlich.

Alternative zur functions.php: Der eigene kleine Werkzeugkoffer

wordpress-toolbox-plugin
Toolbox im Plugin-Verzeichnis

Oft und gerne werden sogenannte Micro-Plugins erstellt, die in der Regel nur eine einzige Funktion haben. Aber auch da wird es schnell unübersichtlich und intransparent. Sergej Müller hat sich über diese Thematik bereits Gedanken gemacht und eigens für das modulare Auslagern von Code-Schnipseln in WordPress das Plugin Toolbox entwickelt.

Werkzeugkoffer für die Modularisierung der functions.php. WordPress Snippets bequem und übersichtlich als Module verwalten. – Toolbox

So funktioniert die Toolbox

Die Toolbox ist ein WordPress-Plugin, in dessen Verzeichnis du für jede Funktion, die du eigentlich der functions.php angehangen hättest, eine eigene .php – Datei anlegst. Im Backend deiner WordPress-Installation kannst du deinen persönlichen Werkzeugkoffer Toolbox unter Einstellungen -> Toolbox aufrufen.

Hier findest du bereits einige vorinstallierte Module, die du aktivieren oder deaktivieren kannst. Bemerkenswert: Du kannst festlegen, für welchen Bereich die Module geladen werden sollen: [Frontend] oder/und [Backend]. Entscheidest du dich dafür, dass ein Modul nur im Frontend aktiviert ist, trifft dies nur auf den öffentlichen Bereich deiner WordPress-Site zu.

Das erste eigene Toolbox-Modul

Du findest deine installierten Module stets unter wp-content/plugins/toolbox/modules.

WordPress Code-Schnipsel modular auslagern

Du erstellst ein neues Modul, indem du eine .php-Datei anlegst und folgendes Grundgerüst einfügst:

<?php
/*
Module Name: Name deines Moduls
Description: Eine kurze Beschreibung des Moduls. [Frontend]
Module URL: http://example.org
Author: Max Mustermann
Author URI: http://example.org
*/


/* Sicherheitsabfrage */
if ( !class_exists('Toolbox') ) {
 die();
}

/* Ab hier kanns losgehen! */

Unterhalb der Sicherheitsabfrage kannst du nun deinen Code-Schnipsel einfügen (siehe „Ab hier kanns losgehen!“)

Module Aktivieren und Deaktivieren

In den Einstellungen kannst du deine Module verwalten:

wordpress-code-snippets-modular-auslagern-toolbox
Einstellungen -> Toolbox

Du findest einige Toolbox-Module von Sergej Müller auf seiner Gists-Seite.

Benutzt du bereits das Toolbox-Plugin? Welche Module verwendest du?

Ich benutze die Toolbox, um meinen Piwik-Code einzubinden und für die beiden Performance-Hacks, die im Screenshot ersichtlich sind. Welche Module verwendest du?

6 Antworten auf „Modular: WordPress Code-Schnipsel zukunftssicher einbinden“

  1. Das Tool ist auf jeden Fall sehr zu empfehlen. Allerdings werden weniger geübte Blogger damit nicht umgehen können. Woher wissen sie, welche Module nur im Front- oder Backend geladen werden sollten? Mit ein wenig mehr Hilfe in Form von Beispielen und Support würde die Toolbox mehr Verbreitung finden.

    1. Hallo Ramona,

      Da sprichst du einen wichtigen Punkt an – weniger technik-affine Blogger werden sich damit wohl nicht anfreunden können.

      Zum Thema Front- oder Backend:

      Frontend-Aufrufe finden hier via !is_admin() statt, während Backend-Aufrufe via is_admin() aufgerufen werden. Mit dieser Eselsbrücke denke ich daran, dass der Piwik-Tracking-Code nicht ins Backend gehört 😉

      Grüße,
      Pascale

  2. Hallo Pascale,

    ich bin vor kurzem bereits auf diesen Artikel gestoßen und wollte dies mal ausprobieren. Ich stimme mit Dir überein, dass man Änderungen wenn möglich auslagert.

    Grüße

    1. Falls Du ein Child-Theme verwendest, füge den Code bitte in die functions.php ein:

      https://gist.github.com/theeventscalendar/632a24421c22fcab9b3f#file-link-directly-to-website-url-php
      (Wie eben dort beschrieben, ich habs jetzt nicht selbst getestet)

      Falls nicht, empfehle ich die Toolbox. Lege dafür eine neue .php-Datei an, z.B. calender-links.php und füge die im Beitrag genannte Vorlage ein bis einschließlich:

      /* Ab hier kanns losgehen! */

      und füge entsprechenden Code hinter Ab hier kanns losgehen! ein.

      Danach speicherst du die Datei ab und legst diese – wie im Beitrag beschrieben – im modules Ordner des Toolbox-Plugins ab.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.