Custom Post Types (CPT) sind eine großartige Möglichkeit, benutzerdefinierte Inhalte in WordPress zu verwalten. In diesem Tutorial zeige ich dir, wie du einen eigenen Custom Post Type erstellen kannst, indem du die functions.php deines Themes bearbeitest.

Schritt 1: Öffne die functions.php-Datei

  1. Melde dich bei deinem WordPress-Dashboard an.
  2. Gehe zu Design > Theme-Datei-Editor.
  3. Wähle im rechten Menü die Datei functions.php aus.

Wichtig: Bevor du Änderungen an der functions.php vornimmst, erstelle eine Sicherungskopie dieser Datei oder verwende ein Child-Theme, um mögliche Fehler zu vermeiden.

Du kannst die functions.php auch per FTP bearbeiten, gehe hierzu mit deinem FTP-Client (Filezilla etc.) in den Ordner wp-content/themes/[dein child-theme]/functions.php

Schritt 2: Custom Post Type (CPT) registrieren

Nun fügen wir den Code zum Erstellen deines Custom Post Types hinzu. In diesem Beispiel erstellen wir einen CPT für „Bücher“ (Books).

function custom_post_type_books() {
    $labels = array(
        'name'               => 'Bücher',
        'singular_name'      => 'Buch',
        'menu_name'          => 'Bücher',
        'name_admin_bar'     => 'Buch',
        'add_new'            => 'Neues Buch hinzufügen',
        'add_new_item'       => 'Neues Buch hinzufügen',
        'new_item'           => 'Neues Buch',
        'edit_item'          => 'Buch bearbeiten',
        'view_item'          => 'Buch ansehen',
        'all_items'          => 'Alle Bücher',
        'search_items'       => 'Bücher durchsuchen',
        'not_found'          => 'Keine Bücher gefunden',
        'not_found_in_trash' => 'Keine Bücher im Papierkorb gefunden'
    );

    $args = array(
        'labels'             => $labels,
        'public'             => true,
        'has_archive'        => true,
        'rewrite'            => array('slug' => 'buecher'),
        'supports'           => array('title', 'editor', 'thumbnail', 'excerpt', 'comments'),
        'show_in_rest'       => true,
    );

    register_post_type('books', $args);
}
add_action('init', 'custom_post_type_books');

Schritt 3: Den Code verstehen

  • labels: Hier legst du die verschiedenen Bezeichnungen fest, die für deinen CPT in der WordPress-Oberfläche verwendet werden. Das macht den CPT für dich und andere Benutzer verständlicher.
  • public: Wenn diese Option auf true gesetzt ist, ist der CPT öffentlich sichtbar und kann auf der Website angezeigt werden.
  • has_archive: Aktiviert die Archivseite für deinen CPT. Zum Beispiel wird /buecher eine Archivseite für alle Bücher sein.
  • rewrite: Hier kannst du die URL-Struktur deines CPTs anpassen. In diesem Fall wird „buecher“ in der URL verwendet.
  • supports: Legt fest, welche Funktionen (Titel, Editor, Thumbnails etc.) dein CPT unterstützt.
  • show_in_rest: Aktiviert die Unterstützung für den Block-Editor (Gutenberg).

Schritt 4: Änderungen speichern und prüfen

Speichere die functions.php-Datei und gehe zurück zum WordPress-Dashboard. Du solltest jetzt im Menü links einen neuen Punkt namens „Bücher“ sehen.

Schritt 5: Inhalte hinzufügen

  1. Gehe zu Bücher > Neues Buch hinzufügen.
  2. Füge deinen Inhalt hinzu, wie du es mit normalen Beiträgen tun würdest.
  3. Veröffentliche dein Buch und es wird auf deiner Website unter der URL-Struktur /buecher/dein-buch-titel erscheinen.

Optional: Anpassungen vornehmen

Du kannst den CPT weiter anpassen, indem du mehr Optionen hinzufügst, z. B. benutzerdefinierte Taxonomien (ähnlich Kategorien) oder weitere Funktionen, die der CPT unterstützen soll. Hierfür kannst du die Argumente in der register_post_type-Funktion erweitern.

Herzlichen Glückwunsch! Du hast erfolgreich einen Custom Post Type in WordPress erstellt. Viel Spaß beim Erkunden der weiteren Möglichkeiten!