Du bist Freelancer und ein Kunde braucht eine kleine Zusatzfunktion für seine WordPress-Seite – etwas, das es noch nicht als fertigem Plugin gibt (oder das du besser umsetzen kannst).
Aufgabenstellung
- Wähle eine Idee aus (z.B. Footer-Copyright-Jahr automatisch aktualisieren, Custom Login-Logo, Post-Views-Zähler).
- Entwirf zuerst einen kurzen Konzeptplan: Was soll das Plugin tun? Welche Hooks/APIs brauchst du?
- Implementiere das Plugin mit korrektem Plugin-Header, sauberem Code-Stil und Sicherheit (
esc_html(), Nonces wo nötig). - Schreibe eine kurze README mit Installationsanleitung.
Lernziele
Plugin-HeaderCode-SicherheitNoncesKonzeptplanungREADME schreiben
Abgabe: Plugin-Ordner als .zip + README.md + 5-min. Präsentation der Idee
Kreativ
Musterlösung (Beispiel-Idee: automatisches Copyright-Jahr)
auto-copyright/auto-copyright.php
<?php
/**
* Plugin Name: Auto Copyright Jahr
* Description: Ersetzt %%JAHR%% im Footer-Widget automatisch durch das aktuelle Jahr.
* Version: 1.0
* Author: Lernende
*/
if ( ! defined( 'ABSPATH' ) ) exit;
add_filter( 'widget_text', 'autocopy_replace_year' );
add_filter( 'widget_text_content', 'autocopy_replace_year' );
function autocopy_replace_year( $text ) {
return str_replace(
'%%JAHR%%',
esc_html( date_i18n( 'Y' ) ), // WordPress-lokalisierte Jahreszahl
$text
);
}
README.md
# Auto Copyright Jahr
Ersetzt den Platzhalter `%%JAHR%%` in Widget-Texten automatisch
durch das aktuelle Jahr – kein manuelles Updaten mehr nötig.
## Installation
1. Ordner in `/wp-content/plugins/` hochladen
2. Im Backend unter Plugins aktivieren
## Verwendung
Im Text-Widget oder im Footer einfach `%%JAHR%%` einfügen:
> © %%JAHR%% Mein Unternehmen
## Sicherheit
Ausgabe wird mit `esc_html()` escaped. Keine Datenbankzugriffe.
Warum diese Lösung?
Der widget_text-Filter ist ein einfacher, sauberer Einstieg: kein eigenes DB-Schema, keine Settings-Page nötig – und trotzdem echten Mehrwert. date_i18n() statt date() respektiert die WordPress-Zeitzone.
Ähnliche Beiträge
- Ein nützliches Mini-Plugin selbst erfinden (44.36%)
- Aufgabe 5 – Custom REST API Endpoint (34.55%)
- Aufgabe 4 – Eigenen Shortcode entwickeln (32.16%)
- Aufgabe 1 (30.87%)
- Aufgabe 1 – Plugin-Anatomie & Hooks (30.28%)
