Dokumentation · Fehlerbehebung
Probleme bei der Frontend-Anzeige
Dieses Dokument behandelt Probleme mit der Darstellung von Fahrzeugdaten auf den öffentlich zugänglichen Seiten einer WordPress-Website, die das ADP Car Market Hub-Plugin verwendet. Es befasst sich mit Archivseiten, einzelnen Fahrzeugdetailseiten, Theme-Konflikten, Permalink-Problemen und Problemen beim Laden von Assets.
Wann Sie dieses Dokument lesen sollten
Lesen Sie dieses Dokument, wenn:
- Die Fahrzeug-Archivseite (
/cars/oder der konfigurierte Slug) keine Fahrzeuge anzeigt, einen 404-Fehler ausgibt oder nicht gefunden wird. - Einzelne Fahrzeugdetailseiten nicht angezeigt werden oder Layout und Styling fehlen.
- Filter auf der Archivseite nicht funktionieren oder nicht die erwarteten Ergebnisse liefern.
- Plugin-CSS oder -JavaScript auf den Frontend-Seiten nicht geladen wird.
- Das aktive Theme die Plugin-Templates überschreibt oder mit ihnen kollidiert.
- Die Seitennummerierung (Pagination) auf dem Archiv oder einer per Shortcode eingebetteten Übersichtsseite nicht funktioniert.
Übersicht
Das Plugin registriert einen Custom Post Type (as24ci_car) mit dem Archiv-Slug cars und stellt zwei Template-Dateien bereit:
templates/archive-as24ci_car.php— wird für die Fahrzeug-Archivseite verwendet.templates/single-as24ci_car.php— wird für die einzelnen Fahrzeugdetailseiten verwendet.
WordPress löst Templates mithilfe der Standard-Template-Hierarchie auf. Das Plugin klinkt sich in die Filter single_template und archive_template ein. Es prüft zuerst, ob das aktive Theme ein eigenes Override bereitstellt (single-as24ci_car.php oder archive-as24ci_car.php im Theme-Verzeichnis), und verwendet das plugin-eigene Template als Fallback. Das bedeutet, dass ein Theme das Layout vollständig steuern kann, wenn es eine passende Template-Datei bereitstellt.
CSS und JavaScript werden automatisch geladen, indem der aktuelle Seitentyp erkannt wird. Auf Seiten, auf denen ein Shortcode zum Einbetten des Archivs verwendet wird, werden Assets über has_shortcode() im Beitragsinhalt der Seite erkannt.
Voraussetzungen
- Mindestens ein Fahrzeug-Beitrag existiert und ist veröffentlicht.
- Die Permalinks sind auf eine andere Option als "Einfach" eingestellt (damit das Routing des Archivs korrekt funktioniert). Gehen Sie zu Einstellungen → Permalinks und wählen Sie eine andere Option als die Standardeinstellung "Einfach", und klicken Sie dann auf Änderungen speichern.
- Das Plugin ist aktiv und es liegen keine fatalen PHP-Fehler vor (überprüfen Sie dies unter Werkzeuge → Website-Zustand oder im PHP-Fehlerprotokoll).
Diagnoseschritte
Schritt 1: Permalinks neu speichern
Die meisten 404-Fehler auf dem Archiv werden durch veraltete Permalink-Regeln verursacht. Dies ist das Erste, was Sie versuchen sollten, wenn das Fahrzeugarchiv oder die Detailseiten einen 404-Fehler zurückgeben.
- Gehen Sie im WordPress-Adminbereich zu Einstellungen → Permalinks.
- Klicken Sie auf Änderungen speichern, ohne Einstellungen zu ändern. Dadurch werden die Rewrite-Regeln neu generiert.
- Rufen Sie die URL des Fahrzeugarchivs auf (normalerweise
/cars/) und prüfen Sie, ob sie geladen wird.
Schritt 2: URL des Fahrzeugarchivs überprüfen
Das Plugin registriert den CPT mit dem Archiv-Slug cars. Die Archiv-URL lautet normalerweise:
https://your-site.example.com/cars/
Wenn WordPress in einem Unterverzeichnis installiert ist oder die Permalink-Struktur ein Präfix verwendet, spiegelt die Archiv-URL dies wider. Verwenden Sie get_post_type_archive_link('as24ci_car') (über WP-CLI oder ein Test-Snippet), um die genaue URL zu ermitteln.
Schritt 3: Prüfen, ob das CPT-Archiv aktiviert ist
Der Custom Post Type wird mit has_archive = true registriert. Wenn WordPress nicht zum Archiv weiterleitet, prüfen Sie Folgendes:
- Die Permalinks dürfen nicht auf "Einfach" eingestellt sein. Einfache Permalinks deaktivieren das Routing für CPT-Archive.
- Kein Caching-Plugin liefert eine veraltete 404-Antwort für die Archiv-URL aus. Leeren Sie den Cache nach dem Neuspeichern der Permalinks.
- Keine
.htaccess-Regel oder Serverkonfiguration blockiert die Archiv-URL.
Schritt 4: Auf Theme-Konflikte prüfen
Wenn das Archiv- oder Detail-Template fehlerhaft dargestellt wird, kann ein Theme-Konflikt die Ursache sein:
- Wechseln Sie vorübergehend zu einem Standard-WordPress-Theme (wie Twenty Twenty-Four) und rufen Sie das Fahrzeugarchiv sowie eine Fahrzeugdetailseite auf.
- Wenn die Seiten mit dem Standard-Theme korrekt angezeigt werden, verursacht Ihr aktives Theme einen Konflikt.
- Häufige Ursachen: Das aktive Theme stellt ein eigenes
archive-as24ci_car.php- odersingle-as24ci_car.php-Template bereit, das veraltet oder inkompatibel ist; das Theme gibt eine fehlerhafte HTML-Struktur um den Inhalt herum aus; das CSS des Themes kollidiert mit den Styles des Plugins.
Schritt 5: Laden von CSS und JavaScript überprüfen
Wenn das Fahrzeugarchiv oder die Detailseite ungestylte Inhalte oder nicht funktionierende interaktive Elemente (Filter-Dropdowns, Galerie, Lightbox) anzeigt:
- Öffnen Sie die Seite im Browser und betrachten Sie den Quelltext oder nutzen Sie die Entwicklertools des Browsers (Netzwerk-Tab).
- Überprüfen Sie, ob die Stylesheets des Plugins vorhanden sind:
- Auf Archivseiten:
as24ci-archive.css- Auf Fahrzeugdetailseiten:as24ci-single.css - Falls diese fehlen:
- Stellen Sie sicher, dass die Seite korrekt als CPT-Archiv oder als einzelner CPT-Beitrag erkannt wird.
- Wenn Sie einen Shortcode verwenden, um das Archiv auf einer normalen Seite einzubetten, stellen Sie sicher, dass sich der Shortcode
[as24ci_archive]im Beitragsinhalt der Seite befindet (nicht in einem Widget, Template-Teil oder einem benutzerdefinierten Feld, das ausserhalb vonthe_contentverarbeitet wird). Assets werden erkannt, indem der Beitragsinhalt mithas_shortcode()ausgelesen wird. - Wenn ein Performance- oder Minifizierungs-Plugin Skripte zusammenfasst oder verzögert lädt, kann dies das JavaScript des Plugins beeinträchtigen. Testen Sie dies mit deaktiviertem Performance-Plugin. - Stellen Sie sicher, dass kein anderes Plugin oder Theme
wp_dequeue_styleoderwp_dequeue_scriptfür die Plugin-Assets aufruft.
Schritt 6: Verhalten der Archiv-Filter überprüfen
Das Fahrzeugarchiv unterstützt Filterparameter, die über die URL-Query-Strings übergeben werden (z. B. ?make=volkswagen&fuel_type=diesel). Wenn Filter nicht funktionieren:
- Stellen Sie sicher, dass die Filter-Widgets angezeigt werden (sie werden vom Archiv-Template gerendert).
- Stellen Sie sicher, dass der spezifische Filter in den Einstellungen für Filter oder den Layout Manager des Plugins aktiviert ist. Deaktivierte Filter werden nicht angezeigt und ihre GET-Parameter werden ignoriert.
- Stellen Sie sicher, dass keine Caching-Ebene eine zwischengespeicherte Version der Archivseite unabhängig von den Query-Parametern ausliefert. Die meisten Caching-Plugins müssen so konfiguriert werden, dass Seiten mit Query-Strings vom Caching ausgeschlossen werden.
Schritt 7: Probleme mit der Seitennummerierung untersuchen
Wenn die Seitennummerierung (Pagination) auf der Archivseite nicht funktioniert (das Klicken auf Seite 2 liefert dieselben Ergebnisse):
- Stellen Sie sicher, dass die Permalink-Struktur nicht auf "Einfach" eingestellt ist.
- Auf per Shortcode eingebetteten Archivseiten verwendet die Seitennummerierung die Query-Parameter
?paged=2(oder?page=2). Stellen Sie sicher, dass keine Weiterleitung diese Parameter entfernt. - Auf der echten CPT-Archiv-URL verwaltet WordPress die Seitennummerierung nativ. Speichern Sie die Permalinks neu, falls diese fehlerhaft ist.
Schritt 8: Auf PHP-Fehler prüfen
Ein fataler PHP-Fehler oder eine Warnung kann die Seitenausgabe unbemerkt abbrechen oder zu einer unvollständigen Darstellung führen:
- Aktivieren Sie vorübergehend den Debug-Modus von WordPress, indem Sie Folgendes in die
wp-config.phpeinfügen: ``php define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false );`` - Rufen Sie die fehlerhafte Seite auf und prüfen Sie
wp-content/debug.logauf Fehler. - Deaktivieren Sie den Debug-Modus nach der Untersuchung wieder.
Konfigurationsreferenz
| Einstellung | Auswirkung auf die Frontend-Anzeige |
|---|---|
| Standard-Beitragsstatus | Fahrzeuge, die als draft erstellt wurden, erscheinen erst im Frontend, wenn sie veröffentlicht wurden. |
| Archiv-Layout | Steuert den Stil des Karten-Layouts (Raster oder Liste). Konfigurieren Sie dies in den Design-Einstellungen des Plugins. |
| Detail-Layout | Steuert das Layout der einzelnen Fahrzeugdetailseite. |
| Filter aktiviert | Steuert, welche Filteroptionen auf der Archivseite angezeigt werden. |
| Feldsichtbarkeit | Steuert, welche Fahrzeugdatenfelder in der Detail- und Archivansicht angezeigt werden. |
Betriebliche Hinweise
- Die Template-Dateien des Plugins befinden sich im Verzeichnis
templates/des Plugins. Bearbeiten Sie diese Dateien nicht direkt, da Aktualisierungen Ihre Änderungen überschreiben. Um Templates anzupassen, kopieren Sie diese in Ihr aktives Theme-Verzeichnis und bearbeiten Sie die Kopie dort. - Das Archiv-Template löst Filterwerte über WordPress-Taxonomien (
as24ci_brand,as24ci_model,as24ci_fuel_typeusw.) und eine benutzerdefinierte Datenbanktabelle (wp_as24_vehicles) für numerische Felder wie Preis und Kilometerstand auf. - Wenn die Archivseite mithilfe des Shortcodes
[as24ci_archive]auf einer Standard-WordPress-Seite eingebettet ist, darf die Seite keine eigene Query-Schleife oder Inhalte aufweisen, die mit der globalen Variable$wp_querykollidieren. Der Shortcode ersetzt$wp_querywährend des Renderings vorübergehend und stellt sie danach wieder her. - Dynamisches CSS (Design-Einstellungen wie Farben) wird inline im
<head>-Tag über einewp_head-Aktion mit der Priorität 99 ausgegeben.
Fehlerbehebung
| Symptom | Wahrscheinliche Ursache | Prüfung |
|---|---|---|
| Archivseite gibt 404 zurück | Permalink-Regeln sind veraltet oder "Einfache" Permalinks sind aktiv | Permalinks unter Einstellungen → Permalinks neu speichern |
| Fahrzeugdetailseite gibt 404 zurück | Gleich wie oben | Permalinks neu speichern |
| Archiv zeigt keine Fahrzeuge an | Keine veröffentlichten Fahrzeuge oder Filter schliessen alle Ergebnisse aus | Unter Beiträge → Cars prüfen; alle aktiven Filter zurücksetzen |
| Archiv-CSS fehlt | Assets werden nicht geladen, da die Seite nicht als CPT-Archiv erkannt wird | Sicherstellen, dass der Shortcode in postcontent ist; prüfen, ob isposttypearchive() true zurückgibt |
| Galerie oder Lightbox funktioniert nicht | JavaScript lädt nicht oder kollidiert mit einem anderen Plugin | Browser-Konsole auf Fehler prüfen; mit deaktivierten anderen Plugins testen |
| Filter-Dropdowns leer | Filter ist in den Plugin-Einstellungen deaktiviert | Gewünschte Filter in den Einstellungen für Filter / Layout Manager aktivieren |
| Filter werden vom Cache ignoriert | Caching-Ebene liefert statische Antwort aus | Die Archiv-URL und ihre Varianten mit Query-Strings vom Seitencache ausschliessen |
| Layout mit aktivem Theme fehlerhaft | Theme-CSS oder -Templates kollidieren mit dem Plugin | Mit einem Standard-WordPress-Theme testen |
| Seitennummerierung defekt | "Einfache" Permalinks oder Caching entfernt Query-Parameter | Zu einer Permalink-Struktur wechseln, die nicht "Einfach" ist; Cache-Ausschlüsse konfigurieren |