Dokumentation · Technische Dokumentation

Shortcodes

Dieses Dokument listet die vom ADP Car Market Hub-Plugin registrierten Shortcodes, ihre Attribute und die typischen Anwendungsfälle für das Einbetten von Plugin-Ausgaben in normalen WordPress-Seiten auf.

Wann Sie dieses Dokument verwenden sollten

Lesen Sie dieses Dokument, wenn Sie:

  • Das Fahrzeugarchiv, den Suchfilter oder die Vergleichsansicht in eine bestehende Landingpage einbetten möchten, anstatt das CPT-Archiv zu nutzen.
  • Eine Favoritenseite zu einer normalen WordPress-Seite hinzufügen möchten.
  • Eine Standortkarte oder eine Karte mit Öffnungszeiten auf Garagen-Seiten platzieren möchten.
  • Die unterstützten Attribute für einen bestehenden Shortcode nachschlagen möchten.

Für den zugrunde liegenden Template-Ladevorgang siehe Frontend Template System.

Übersicht

Das Plugin registriert die folgenden Shortcodes:

ShortcodeRendert
[as24ci_archive]Das Fahrzeugarchiv (filterbar, sortierbar, mit Paginierung).
[as24ci_search_filter]Das eigenständige Suchfilter-Formular ohne Ergebnisse.
[as24ci_compare]Die Fahrzeug-Vergleichsseite.
[as24ci_favorites]Die Favoritenseite des Besuchers.
[as24ci_location_box]Eine Standortkarte für einen einzelnen Standort-Post.
[as24ci_hours_box]Eine Karte mit Öffnungszeiten für einen einzelnen Standort-Post.

Alle Shortcodes können in Standardseiten, Beiträgen und den meisten blockbasierten Inhalten platziert werden. Sie verwenden dieselben Templates und Assets wie die nativen Seiten des Plugins.

Shortcode-Referenz

[as24ci_archive]

Zeigt das Fahrzeugarchiv auf einer beliebigen Seite an.

  • Verhalten: Erstellt eine WP_Query aus $_GET-Parametern über dieselbe Logik, die auch vom CPT-Archiv (Archive_Filters::build_query_args_from_request()) verwendet wird, tauscht vorübergehend die globale $wp_query aus und rendert das mitgelieferte archive-as24ci_car.php-Template. Die ursprüngliche Abfrage wird anschliessend wiederhergestellt.
  • Attribute (alle optional, alle über URL überschreibbar):
  • make, model — voreingestellte Marke / Modell.
  • price_min, price_max — Grenzen des Preisbereichs (zugeordnet zu min_price, max_price).
  • fuel, body — Slugs für Treibstoff- und Karosserietyp.
  • order_byprice, mileage oder date. Kombiniert mit order, um den Parameter sort zu erzeugen.
  • orderasc (Standard) oder desc.
  • per_page12, 24, 48, 72 oder all.
  • URL-Parameter überschreiben Attribute, sodass Besucher ihre Suche interaktiv verfeinern können.
  • Paginierung: Liest ?paged= (bevorzugt) oder ?page= aus der URL.

[as24ci_search_filter]

Rendert das Suchfilter-Formular (ohne Ergebnisse), damit Besucher Kriterien auswählen können, bevor sie zu einer Ergebnisseite weitergeleitet werden.

  • Attribute:
  • results_url — URL, an die das Formular gesendet wird. Standardmässig die Archiv-URL des Post-Typs as24ci_car, mit einem finalen Fallback auf /cars/, wenn keine Archiv-URL verfügbar ist.
  • Filter-Set: Es werden nur die Filter gerendert, die in der Layout-Zone Suchfilter aktiviert sind. Verwalten Sie diese in der Admin-Konfiguration unter Filter.
  • Status-Zähler: Das Formular zeigt Live-Zahlen für Alle, Neu und Gebraucht an, wobei dieselbe taxonomiebasierte Abfrage wie im Archiv verwendet wird, damit Zähler und Ergebnisse konsistent bleiben.

[as24ci_compare]

Rendert die Fahrzeug-Vergleichsseite (page-as24ci_compare.php).

  • Auswahl: Fahrzeuge werden über den GET-Parameter ids ausgewählt (kommagetrennte Post-IDs).
  • Attribute: Keine im aktuellen Quellcode dokumentiert; überprüfen Sie dies vor der Veröffentlichung, falls Sie Attribute bereitstellen möchten.

[as24ci_favorites]

Rendert die Favoritenseite des Besuchers. Die Liste der Favoriten wird clientseitig im Browser des Besuchers gespeichert; der Shortcode (und der zugehörige REST-Endpunkt) befüllt diese Liste mit aktuellen Fahrzeugdaten.

  • Verhalten: Lädt das Favoriten-Stylesheet bei Bedarf in die Warteschlange und befüllt die Fahrzeugdaten aus POST /wp-json/as24ci/v1/favorites.
  • Sichtbare Felder: Konfiguriert durch die Layout-Zone Favoriten in der Admin-Konfiguration unter Filter.

[as24ci_location_box]

Rendert eine Standort-Zusammenfassungskarte für einen einzelnen Standort-Post.

  • Attribute:
  • post_id — ID des zu rendernden Standort-Posts. Wenn weggelassen, versucht der Shortcode, den Standort aus dem aktuellen Kontext aufzulösen.

[as24ci_hours_box]

Rendert eine Karte mit Öffnungszeiten für einen einzelnen Standort-Post.

  • Attribute:
  • post_id — ID des zu rendernden Standort-Posts. Gleiches Fallback-Verhalten wie bei [as24ci_location_box].

Schritt-für-Schritt-Anleitung

  1. Öffnen oder erstellen Sie die Seite, auf der Sie den Shortcode einbetten möchten.
  2. Fügen Sie den Shortcode-Block hinzu (oder fügen Sie den Shortcode-String in einen klassischen Editor ein).
  3. Legen Sie alle benötigten Attribute fest. Zum Beispiel: - [as24ci_archive make="audi" per_page="24"] - [as24ci_search_filter results_url="/inventory/"] - [as24ci_location_box post_id="42"]
  4. Veröffentlichen oder vorschauen Sie die Seite und überprüfen Sie die Darstellung.
  5. Wenn sich der Shortcode auf einer Seite befindet, die von einem Full-Page-Cache ausgeliefert wird, leeren Sie den Cache nach dem Bearbeiten, damit die neueste Ausgabe bereitgestellt wird.

Betriebliche Hinweise

  • Das Plugin setzt die globale Variable $as24ci_render_mode auf 'shortcode', während ein Shortcode-Template gerendert wird. Dies wird von anderen Teilen des Plugins (Asset-Laden, Analytics) verwendet, damit sich shortcodebasierte Seiten konsistent mit dem nativen CPT-Archiv verhalten.
  • [as24ci_archive] und [as24ci_compare] tauschen die globale Variable $wp_query aus, während ihr Template eingebunden wird, und rufen danach wp_reset_postdata() auf. Betten Sie diese im Hauptinhaltsbereich ein, um Konflikte mit Theme-Komponenten zu vermeiden, die die globale Abfrage frühzeitig auslesen.
  • [as24ci_search_filter] generiert seine action-URL aus der konfigurierten (oder standardmässigen) Ergebnis-URL und behält alle in dieser URL vorhandenen Query-Parameter über versteckte Formularfelder bei, sodass es sowohl mit schönen als auch mit einfachen Permalinks funktioniert.
  • Die mitgelieferten Archiv- und Suchfilter-Templates verwenden immer die plugin-eigenen Dateien. Theme-Overrides für archive-as24ci_car.php gelten sowohl für das CPT-Archiv als auch für den Shortcode [as24ci_archive], aber page-as24ci_compare.php und parts/search-filter.php werden nicht über locate_template() geladen — sie können nicht über ein Theme überschrieben werden, ohne den Plugin-Quellcode zu ändern. Siehe Template-Overrides.
  • Alle Shortcodes geben Strings zurück (keine direkte Ausgabe per Echo), sodass sie in Bildunterschriften, Tabellenzellen oder Block-Patterns eingebettet werden können.

Fehlerbehebung

  • Shortcode gibt reinen Text aus — Überprüfen Sie den Shortcode-Namen auf Tippfehler. Bei Namen wird zwischen Gross- und Kleinschreibung unterschieden; verwenden Sie die oben dokumentierte Kleinschreibung.
  • [as24ci_archive] zeigt die falschen Fahrzeuge an — Stellen Sie sicher, dass die URL nicht bereits Filterparameter von einer vorherigen Seite enthält; URL-Parameter überschreiben immer Shortcode-Attribute.
  • [as24ci_search_filter] zeigt keine Felder an — Es sind keine Filter in der Zone Suchfilter aktiviert. Öffnen Sie die Admin-Konfiguration unter Filter und aktivieren Sie die benötigten Filter.
  • [as24ci_favorites] zeigt eine leere Liste an — Der Besucher hat keine Favoriten im aktuellen Browser gespeichert. Versuchen Sie zuerst, ein Fahrzeug zu den Favoriten hinzuzufügen; Favoriten sind an den Browser/das Gerät gebunden.
  • Paginierungs-Links von [as24ci_archive] führen zu 404 — Ihre Permalink-Struktur übergibt paged möglicherweise nicht sauber durch die Host-Seite. Versuchen Sie, ?page=N zu verwenden, oder aktualisieren Sie die Permalink-Struktur.
  • Vergleichsseite ist leer — Der Parameter ids fehlt in der URL. Fügen Sie mindestens zwei Fahrzeug-IDs hinzu: ?ids=123,456.

Verwandte Dokumente