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:

  • Themestyle.css, functions.php und (bei Block-Themes) theme.json.
  • Gutenberg Blockblock.json und register.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.

Registriert Menü-Positionen (register_nav_menus()), damit ein Theme mehrere Menüstandorte (z. B. „Primary", „Footer") anbieten kann.

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.

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 (stringsanitize_text_field, integerabsint, numberfloatval …); 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/async ausliefern, 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.