WP Code Generator — Manual
Vollständige Funktionsbeschreibung des WP Code Generators: alle Generatoren, die Snippet-Bibliothek, konfigurierbare Felder, Ausgabe-Mechanik und Grenzen.
Zurück zur Übersicht: WP Code Generator · Tool live öffnen: www.jpkc.com/tools/wp/
Dieses Manual beschreibt den WP Code Generator vollständig: wie die Oberfläche aufgebaut ist, wie die Generierung abläuft, was jeder einzelne Generator macht und welche Felder er anbietet, was die Snippet-Bibliothek enthält und wo die Grenzen liegen. Die Oberfläche des Tools ist auf Englisch — die Generator- und Feld-Bezeichnungen werden hier deshalb in ihrer englischen Original-Schreibweise genannt (mit deutscher Erläuterung), damit du dich im echten Interface zurechtfindest.
Aufbau und Bedienung
Das Tool ist zweigeteilt: links eine Seitenleiste mit allen Generatoren (in Gruppen gegliedert), rechts der Arbeitsbereich des gewählten Generators — ein Formular oben, der Ausgabe-Editor darunter. Du wählst einen Generator, füllst die Felder und liest den Code direkt im Editor ab.
Live-Generierung
Sobald du ein Feld änderst, baut das Tool den Code automatisch neu (entkoppelt/„debounced" mit kurzer Verzögerung, damit es beim Tippen nicht ruckelt). Zusätzlich gibt es pro Generator eine Generate-Schaltfläche, die dasselbe manuell auslöst. Es gibt keinen Server-Roundtrip — die Neuberechnung passiert sofort im Browser.
Mehrdatei-Ausgaben
Einige Generatoren erzeugen mehr als eine Datei. Sie zeigen die Ausgaben dann in Datei-Reitern über dem Editor:
- Theme →
style.css,functions.phpund (bei Block-Themes)theme.json. - Gutenberg Block →
block.jsonundregister.php.
Copy und Download
Jeder Ausgabe-Bereich hat zwei Schaltflächen: Copy legt den aktuellen Editor-Inhalt in die Zwischenablage, Download speichert ihn als Datei mit sinnvollem Namen (plugin.php, theme.json, cpt.php, query.php …). Bei Mehrdatei-Generatoren beziehen sich Copy/Download immer auf den aktiven Datei-Reiter. Wer den Code erst generieren muss, bekommt sonst einen Hinweis („Generate code first by switching to this tab").
Code-Stil und Zielversion
Der erzeugte Code richtet sich an WordPress 6.8+ und modernes PHP (Default „Requires PHP" ist 8.3). Durchgängig verwendet werden declare(strict_types=1), ein defined('ABSPATH') || exit-Schutz in eigenständigen Dateien, typisierte Funktionssignaturen, Arrow-Funktions-Callbacks und WordPress-konforme Hook-Registrierung. Der Code folgt damit den WordPress-Coding-Standards, ist aber bewusst ein Gerüst — die fachliche Logik fügst du selbst ein.
Gruppe „Plugin & Theme"
Plugin
Erzeugt den vollständigen Plugin-Header plus eine Haupt-Klasse. Felder: Plugin Name, Namespace / Main Class, Text Domain, Version, Author, Author URI, Plugin URI, License (GPL-2.0-or-later, GPL-3.0-or-later, MIT, Proprietary), Requires WP (Default 6.8), Requires PHP (Default 8.3), Requires Plugins (optional, WP 6.5+), Tested up to, Stable tag, Network (nur Multisite) und Description.
Komfort: Text-Domain und Namespace werden automatisch aus dem Plugin-Namen abgeleitet, während du tippst (Text-Domain als Slug, Namespace in PascalCase) — du kannst beide danach überschreiben. Die Text-Domain muss dem Plugin-Verzeichnisnamen entsprechen.
Theme
Erzeugt style.css (mit Theme-Header) und functions.php. Felder: Theme Name, Text Domain, Version, Author, Author URI, Theme URI, Requires WP, Parent Theme (nur für Child-Themes — den Verzeichnisnamen des Eltern-Themes eintragen, sonst leer lassen) und Description.
Die Checkbox Block Theme (Full Site Editing) schaltet einen zusätzlichen theme.json-Reiter frei und blendet Optionen ein: eine Farbpalette (Primary, Secondary, Background, Foreground als Farbwähler), Layout-Maße (Content Width, Wide Width) und die Option, templateParts (Header & Footer) plus eine leere Custom-Vorlage einzuschließen. Bei Block-Themes übernimmt functions.php nur noch die Feature-Registrierung.
Gutenberg Block
Erzeugt eine block.json und die PHP-Registrierung via register_block_type(). Felder: Namespace (Plugin-/Theme-Slug), Block Name (Slug), Title, Category (text, media, design, widgets, theme, embed), Icon (Dashicon-Slug), Keywords, Description und die Supports (align, color.text, color.background, typography.fontSize). Die Checkbox Dynamic Block (server-side render) blendet ein Feld für den Render-Callback ein; bei dynamischen Blocks gibt die JS-save()-Funktion null zurück und PHP rendert. Der Blockname hat das Format namespace/block-name, beide Teile kleingeschrieben.
Nav Menus
Registriert Menü-Positionen (register_nav_menus()), damit ein Theme mehrere Menüstandorte (z. B. „Primary", „Footer") anbieten kann.
wp_nav_menu()
Erzeugt den Aufruf zum Ausgeben eines Menüs. Konfigurierbar sind unter anderem Container (und damit Container-Klasse/-ID und ARIA-Label), ein optionales Fallback (eigene Funktion) und ein optionaler Walker.
Sidebar / Widget Area
Registriert eine oder mehrere Widget-Bereiche (register_sidebar()) mit wählbarem Wrapper-Markup (Standard oder eigene HTML-Hülle).
Gruppe „Hooks & Assets"
Hook (Action / Filter)
Erzeugt eine Hook-Registrierung. Felder: Type (Action via add_action oder Filter via add_filter), Hook Name (mit Autovervollständigung aus einer Liste gängiger Core- und WooCommerce-Hooks), Priority (Default 10, kleinere Zahl = frühere Ausführung), Accepted Args (1–10) und Callback Function Name. Wichtig: Action-Callbacks geben void zurück, Filter-Callbacks müssen den (geänderten) Wert returnen, und Accepted Args muss zur Zahl der tatsächlich übergebenen Parameter passen.
Cron Event
Erzeugt ein geplantes Ereignis über die WP-Cron-API. Schedule wählt das Intervall (Hourly, Twice Daily, Daily, Weekly oder Custom); bei Custom Interval legst du Wert und Einheit (Minutes/Hours) selbst fest.
Asset Enqueue
Erzeugt das saubere Einbinden von CSS oder JavaScript. Type (CSS Stylesheet / JavaScript), Hook (wp_enqueue_scripts, admin_enqueue_scripts, login_enqueue_scripts) und Version Strategy (fester Versionsstring, filemtime() für automatisches Cache-Busting oder false). Bei JS gibt es die Footer-Option, bei CSS die Media-Angabe.
Shortcode
Erzeugt die Registrierung eines Shortcodes (add_shortcode()) samt Callback-Gerüst mit Attribut-Handling.
oEmbed Provider
Erzeugt die Registrierung eigener oEmbed-Provider (wp_oembed_add_provider()).
WP-CLI Command
Erzeugt ein WP-CLI-Kommando mit Subcommands. Du definierst Kommando-Name und Subcommands; der Dateiname der Ausgabe richtet sich nach dem Kommando-Namen.
Gruppe „Data Types"
Custom Post Type
Erzeugt register_post_type() mit vollständigem Labels-Array, Supports, REST-Anbindung, Archiv- und Rewrite-Optionen sowie Icon.
Taxonomy
Erzeugt register_taxonomy() — die zugehörige(n) Post-Type(s), Hierarchie (kategorie- oder tag-artig), Labels und REST-Anbindung.
Post Status
Registriert einen eigenen Post-Status (register_post_status()).
Post Meta Field
Registriert ein Post-Meta-Feld (register_post_meta()) mit Typ, Single/Multiple, REST-Sichtbarkeit sowie Auth- und Sanitize-Callback. Der Sanitize-Callback wird je nach Typ automatisch vorgeschlagen (string → sanitize_text_field, integer → absint, number → floatval …); beide Callbacks lassen sich auf „custom" stellen.
Term Meta Field
Wie Post Meta Field, aber für Taxonomie-Begriffe (register_term_meta()) — mit derselben Typ-abhängigen Callback-Logik.
Gruppe „Admin UI"
Meta Box
Erzeugt eine Meta-Box (add_meta_box()) inklusive Render-Callback, Nonce-Prüfung und Speicher-Logik. Der Bildschirm (Screen) ist wählbar, inklusive „custom" für eigene Post-Types.
Dashboard Widget
Erzeugt ein Dashboard-Widget (wp_add_dashboard_widget()) mit Render-Callback.
Settings Page
Erzeugt eine Einstellungsseite über die Settings-API — als Top-Level-Menüpunkt oder Submenü (dann mit wählbarem Parent-Slug), inklusive Registrierung von Sektionen und Feldern.
Admin Bar Nodes
Erzeugt das Hinzufügen oder Entfernen von Knoten in der Admin-Bar (admin_bar_menu).
Contact Methods
Erzeugt das Anpassen der Benutzerprofil-Kontaktfelder (user_contactmethods) — Felder hinzufügen und Standardfelder entfernen.
Gruppe „Config & Queries"
WP-Config
Erzeugt Konstanten-Blöcke für die wp-config.php (z. B. Debug-, Sicherheits-, Performance- und Speicher-Konstanten) zum Hineinkopieren.
Query Builder
Erzeugt eine WordPress-Datenbank-Abfrage. Über Query Type wählst du eine von neun Abfrage-Arten, und das Formular passt sich an: WP_Query (Beiträge), get_users(), get_terms(), get_comments(), WP_Network_Query und WP_Site_Query (beide Multisite) sowie die eigenständigen WP_Tax_Query, WP_Meta_Query und WP_Date_Query. Je nach Typ stehen passende Felder bereit (z. B. bei WP_Query Post-Type, Status, Posts-pro-Seite und Sortierung); ein Info-Kasten erläutert den jeweils gewählten Typ.
Gruppe „Snippets": die Theme-Snippet-Bibliothek
Der Reiter Theme Snippets ist kein Formular-Generator, sondern eine Bibliothek aus 30 fertigen functions.php-Snippets. Du wählst im Dropdown Snippet einen Eintrag; darunter erscheint eine Kurzbeschreibung, optional ein kleines Optionen-Panel (manche Snippets haben Schalter) und ein Feld Text Domain / Prefix, mit dem die generierten Funktionsnamen einen eigenen Präfix bekommen. Der Code aktualisiert sich live; Copy/Download speichern ihn unter <snippet-id>.php.
Die 30 Snippets sind in fünf Kategorien (Original-Optgroup-Bezeichnungen) gegliedert:
- Security & Cleanup (14) — u. a. Generator-Meta-Tag entfernen, Emoji-Support entfernen, Dashicons im Frontend entfernen, XML-RPC abschalten, Versions-Query-Strings entfernen, Argon2ID-Passwörter aktivieren, Kommentare global deaktivieren, Login-Fehlermeldungen verbergen, Benutzer-Enumeration verhindern, REST-
users-Endpoint verbergen, Datei-Editor abschalten, Security-Header setzen, öffentliche REST-API einschränken. - Content & Output (5) — Excerpt-Länge und „Read more"-Text anpassen, Block-Editor-CSS im Frontend entfernen, eigene Bildgröße registrieren, fehlende Alt-Texte aus Gutenberg-Bildern ableiten.
- Admin & Customisation (3) — Skripte
defer/asyncausliefern, eigenes Login-Logo, eigener Admin-Footer-Text. - Branding (5) — eigener E-Mail-Absender, WP-Logo aus der Admin-Bar entfernen, White-Label-Admin, Dashboard-Widgets entfernen, eigenes Dashboard-Widget.
- Misc & SEO (3) — Attachment-Seiten umleiten, Post-Revisionen begrenzen, RSS-Feeds deaktivieren.
Hinweis zur Zählung: Die Marketing-Zeile nennt „31 snippets" — im Tool sind es exakt 30 auswählbare Snippets. Wenn du auf eine andere Zahl kommst, kann das an späteren Erweiterungen der Bibliothek liegen.
Gruppe „Reference": Dashicons
Der Dashicons-Browser zeigt die 349 WordPress-Admin-Icons. Per Klick auf ein Icon kopierst du seinen Slug — praktisch, um etwa das menu_icon eines Custom Post Types oder das Icon eines Gutenberg-Blocks zu setzen. Dies ist eine Referenz, kein Code-Generator.
Architektur und Grenzen
- Rein clientseitig. Sämtliche Code-Templates und die Generierungs-Logik stecken im JavaScript des Tools und laufen vollständig im Browser. Es gibt keinen Server-Roundtrip, keine Datenübertragung und keine serverseitige Verarbeitung deiner Eingaben.
- Gerüst, kein fertiges Plugin. Der Code ist syntaktisch korrekt und konventionskonform, enthält aber bewusst Platzhalter und leere Callback-Rümpfe. Die fachliche Logik schreibst du selbst.
- Keine Validierung deiner Eingaben gegen WordPress. Das Tool weiß nicht, ob ein Hook-Name existiert oder ein Slug schon belegt ist — es formt deine Eingaben in Code, prüft sie aber nicht gegen eine laufende Installation.
- Editor-Ausgabe. Die Anzeige nutzt den ACE-Editor; du arbeitest mit Copy/Download, nicht mit einem Datei-Export-Paket.
- Kein KI-Anteil. Der Generator arbeitet rein template-basiert und deterministisch — es gibt keine KI-Komponente.
Für den Einstieg und die Zielgruppen siehe die Übersichtsseite. Konkrete Abläufe zeigen die Beispiele, Strategie und Stolperfallen die Tipps & Tricks. Ausprobieren kannst du alles direkt im Tool.