Appearance
Kapitel 16: Fehlerbehebung (Anfänger-Leitfaden)
16.1 Theme kann nicht aktiviert werden
Fehler: "Das Theme fehlt oder ist beschädigt"
Ursache 1: style.css fehlt oder ist falsch.
Lösung:
- Überprüfen Sie, ob
style.cssim Theme-Ordner existiert - Überprüfen Sie, ob
Theme Name:instyle.cssvorhanden ist - Überprüfen Sie, ob der Ordnername keine Leerzeichen enthält
Ursache 2: Theme Name enthält Sonderzeichen.
Lösung:
css
/* Richtig ✅ */
Theme Name: Mein Theme
/* Falsch ❌ */
Theme Name: Mein Theme!
Theme Name: Mein@Theme16.2 Dynamische Inhalte werden nicht angezeigt
Fehler: the_title(), the_content() geben nichts aus
Ursache 1: Loop fehlt oder ist falsch.
Lösung:
Stellen Sie sicher, dass die Loop vorhanden ist:
php
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<h2><?php the_title(); ?></h2>
<?php the_content(); ?>
<?php endwhile; ?>
<?php endif; ?>Ursache 2: wp_head() oder wp_footer() fehlt.
Lösung:
Fügen Sie in header.php hinzu:
php
<head>
<!-- andere Tags -->
<?php wp_head(); ?>
</head>Fügen Sie in footer.php hinzu:
php
<?php wp_footer(); ?>
</body>
</html>16.3 Styles werden nicht geladen
Fehler: CSS-Styles haben keine Wirkung
Ursache 1: CSS wurde nicht mit wp_enqueue_style() eingebunden.
Lösung:
Fügen Sie in functions.php hinzu:
php
function mein_theme_scripts() {
wp_enqueue_style('mein-theme-style', get_stylesheet_uri());
}
add_action('wp_enqueue_scripts', 'mein_theme_scripts');Ursache 2: wp_head() fehlt in header.php.
Lösung:
Stellen Sie sicher, dass <?php wp_head(); ?> vor </head> steht.
16.4 JavaScript wird nicht geladen
Fehler: JS-Skripte funktionieren nicht
Ursache: JS wurde nicht mit wp_enqueue_script() eingebunden.
Lösung:
php
function mein_theme_scripts() {
wp_enqueue_script('mein-theme-script', get_template_directory_uri() . '/js/script.js', array('jquery'), '1.0.0', true);
}
add_action('wp_enqueue_scripts', 'mein_theme_scripts');Wichtig: Der letzte Parameter true bedeutet, dass das Skript vor </body> geladen wird.
16.5 Menü wird nicht angezeigt
Fehler: Navigation erscheint nicht
Ursache 1: Menü wurde nicht in functions.php registriert.
Lösung:
php
function mein_theme_setup() {
register_nav_menus(array(
'primary' => __('Hauptmenü', 'mein-theme'),
));
}
add_action('after_setup_theme', 'mein_theme_setup');Ursache 2: Menü wurde im Dashboard nicht zugewiesen.
Lösung:
- Gehen Sie zu Design → Menüs
- Erstellen Sie ein Menü
- Wählen Sie "Hauptmenü" als Position
- Speichern
16.6 "Weiße Seite" (White Screen of Death)
Fehler: Website zeigt nur eine weiße Seite
Ursache: PHP-Fehler.
Lösung 1: Debugging aktivieren.
Fügen Sie in wp-config.php hinzu:
php
define('WP_DEBUG', true);
define('WP_DEBUG_DISPLAY', true);
define('WP_DEBUG_LOG', true);Lösung 2: Fehlerlog prüfen.
Schauen Sie in wp-content/debug.log.
16.7 Responsive Probleme
Fehler: Website sieht auf Mobile falsch aus
Ursache 1: Viewport-Meta-Tag fehlt.
Lösung:
Fügen Sie in header.php innerhalb des <head>-Tags hinzu:
php
<meta name="viewport" content="width=device-width, initial-scale=1.0">Ursache 2: CSS Media Queries fehlen oder sind falsch.
Lösung:
css
/* Tablet */
@media (max-width: 1024px) {
.container {
width: 100%;
}
}
/* Smartphone */
@media (max-width: 768px) {
.container {
width: 100%;
padding: 0 10px;
}
}16.8 Bilder werden nicht angezeigt
Fehler: Beitragsbilder fehlen
Ursache: add_theme_support('post-thumbnails') fehlt.
Lösung:
Fügen Sie in functions.php hinzu:
php
function mein_theme_setup() {
add_theme_support('post-thumbnails');
}
add_action('after_setup_theme', 'mein_theme_setup');Im Template verwenden:
php
<?php if (has_post_thumbnail()) : ?>
<?php the_post_thumbnail('medium'); ?>
<?php endif; ?>16.9 404 Fehler bei Permalinks
Fehler: "Seite nicht gefunden" bei Kategorien/Beiträgen
Ursache: Permalink-Struktur wurde geändert, aber Apache .htaccess wurde nicht aktualisiert.
Lösung:
- Gehen Sie zu Einstellungen → Permalinks
- Klicken Sie auf "Speichern" (ohne Änderungen)
- WordPress wird
.htaccessautomatisch aktualisieren
Manuell:
Stellen Sie sicher, dass .htaccess folgenden Inhalt hat:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress16.10 Widgets werden nicht angezeigt
Fehler: Sidebar zeigt keine Widgets an
Ursache 1: Sidebar wurde nicht registriert.
Lösung:
php
function mein_theme_widgets_init() {
register_sidebar(array(
'name' => __('Sidebar', 'mein-theme'),
'id' => 'sidebar-1',
'description' => __('Hier Widgets hinzufügen.', 'mein-theme'),
'before_widget' => '<section id="%1$s" class="widget %2$s">',
'after_widget' => '</section>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
));
}
add_action('widgets_init', 'mein_theme_widgets_init');Ursache 2: dynamic_sidebar() fehlt in sidebar.php.
Lösung:
php
<?php if (is_active_sidebar('sidebar-1')) : ?>
<aside id="secondary" class="widget-area">
<?php dynamic_sidebar('sidebar-1'); ?>
</aside>
<?php endif; ?>📝 Übung 16: Fehler beheben
Ziel: Beheben Sie häufige Theme-Fehler.
Schritte:
- Erstellen Sie ein Theme mit absichtlichen Fehlern
- Aktivieren Sie
WP_DEBUG - Beheben Sie die Fehler basierend auf den Fehlermeldungen
✅ Zusammenfassung
In diesem Kapitel haben Sie gelernt:
- ✅ Theme-Aktivierungsfehler zu beheben
- ✅ Loop-Fehler zu korrigieren
- ✅ CSS/JS-Einbindungsprobleme zu lösen
- ✅ Menü- und Widget-Fehler zu beheben
- ✅ Responsive Probleme zu debuggen
Nächstes Kapitel: Wir lernen Ressourcen für WordPress-Theme-Entwicklung kennen.
