Zum Inhalt springen

Template overrides

Template-System nach dem Vorbild von WooCommerce. Überschreiben Sie jedes Template, indem Sie es nach yourtheme/polski/ in Ihrem Theme kopieren.

  1. Finden Sie das Original-Template im Plugin-Verzeichnis: wp-content/plugins/polski/templates/
  2. Kopieren Sie die Datei in Ihr Theme-Verzeichnis: wp-content/themes/your-theme/polski/
  3. Behalten Sie die Unterverzeichnisstruktur bei
  4. Bearbeiten Sie die kopierte Datei

Das Plugin erkennt das Template in Ihrem Theme automatisch und verwendet es anstelle des Standards.

Beispiel: Um das Omnibus-Preis-Template zu überschreiben, kopieren Sie:

wp-content/plugins/polski/templates/omnibus/price-display.php

nach:

wp-content/themes/your-theme/polski/omnibus/price-display.php

Wenn Sie ein Child-Theme verwenden, legen Sie die Templates im Verzeichnis des Child-Themes ab. Das Plugin sucht die Templates in der folgenden Reihenfolge:

  1. wp-content/themes/child-theme/polski/
  2. wp-content/themes/parent-theme/polski/
  3. wp-content/plugins/polski/templates/
Template-Datei Beschreibung
omnibus/price-display.php Omnibus-Preisanzeige
omnibus/price-history.php Preisverlauf (Tabelle)
gpsr/product-info.php GPSR-Informationen auf der Produktseite
gpsr/safety-sheet.php Produktsicherheitsdatenblatt
withdrawal/form.php Widerrufsformular
withdrawal/confirmation.php Bestätigung des Widerrufs
withdrawal/email.php Vorlage für Bestätigungs-E-Mail
dsa/report-form.php DSA-Meldeformular
dsa/report-confirmation.php Bestätigung der DSA-Meldung
gdpr/consent-checkboxes.php DSGVO-Einwilligungscheckboxen
ksef/invoice-template.php KSeF-Rechnungsvorlage
greenwashing/product-claims.php Umweltbezogene Produktangaben
legal-pages/terms-template.php Vorlage für Shop-AGB
legal-pages/privacy-template.php Vorlage für Datenschutzerklärung
legal-pages/withdrawal-template.php Vorlage für Widerrufsinformationen
Template-Datei Beschreibung
prices/unit-price.php Grundpreis
prices/vat-notice.php Hinweis zu MwSt. und Versand
prices/delivery-time.php Geschätzte Lieferzeit
manufacturer/info.php Herstellerinformationen
manufacturer/logo.php Herstellerlogo
Template-Datei Beschreibung
food/nutrients-table.php Nährwerttabelle
food/allergens-list.php Allergenliste
food/nutri-score.php Nutri-Score-Kennzeichnung
Template-Datei Beschreibung
checkout/button-label.php Beschriftung der Bestellschaltfläche
checkout/legal-checkboxes.php Rechtliche Checkboxen an der Kasse
checkout/nip-field.php NIP-Feld mit automatischer Vervollständigung
checkout/doi-notice.php Double-Opt-in-Meldung
Template-Datei Beschreibung
wishlist/table.php Wunschlisten-Tabelle
wishlist/button.php Schaltfläche „Zur Liste hinzufügen”
wishlist/header-icon.php Icon im Header
compare/table.php Vergleichstabelle
compare/button.php Vergleichsschaltfläche
compare/floating-bar.php Vergleichsleiste (unten am Bildschirm)
quick-view/modal.php Lightbox-Fenster für Schnellansicht
quick-view/button.php Schaltfläche für Schnellansicht
ajax-search/form.php AJAX-Suchfeld
ajax-search/results.php Dropdown mit Suchergebnissen
ajax-search/result-item.php Einzelnes Suchergebnis
ajax-filters/container.php Container für AJAX-Filter
ajax-filters/filter-category.php Kategoriefilter
ajax-filters/filter-price.php Preisfilter (Schieberegler)
ajax-filters/filter-attribute.php Attributfilter
ajax-filters/active-filters.php Leiste mit aktiven Filtern
product-slider/slider.php Slider-Container
product-slider/item.php Produktkarte im Slider
badges/badge.php Einzelnes Badge
badges/container.php Badge-Container am Produkt
waitlist/form.php Warteschlangen-Formular
waitlist/email.php E-Mail zur Verfügbarkeitsbenachrichtigung
Template-Datei Beschreibung
tools/compliance-checklist.php Compliance-Checkliste
tools/audit-report.php Audit-Bericht
tools/security-incident-form.php Formular für Sicherheitsvorfälle
tools/verified-review-badge.php Badge für verifizierte Bewertung

Jedes Template erhält einen Satz an Variablen. Beispiel für omnibus/price-display.php:

<?php
/**
* Omnibus price display template
*
* Available variables:
* @var float $lowest_price Lowest price from the period
* @var int $days Number of days
* @var int $product_id Product ID
* @var string $price_html Formatted price HTML
* @var string $date Lowest price date
*
* @package Polski
*/
defined('ABSPATH') || exit;
?>
<div class="polski-omnibus-price">
<span class="polski-omnibus-label">
<?php printf(
esc_html__('Lowest price from %d days before the discount:', 'polski'),
$days
); ?>
</span>
<span class="polski-omnibus-amount">
<?php echo wp_kses_post($price_html); ?>
</span>
</div>

Jedes Template enthält einen @version-Kommentar im Header. Prüfen Sie nach einem Plugin-Update, ob Ihre überschriebenen Templates aktualisiert werden müssen.

Das Plugin zeigt eine Warnung im Admin-Bereich an (WooCommerce > Status > Polski), wenn es veraltete Templates im Theme erkennt.

/**
* @version 1.5.0
*/

Wenn Sie den Standard-Speicherort der Templates im Theme ändern möchten:

add_filter('polski/template/path', function (string $path): string {
return 'custom-polski-templates/'; // instead of 'polski/'
});

Dann werden die Templates gesucht in: wp-content/themes/your-theme/custom-polski-templates/

Um zu prüfen, welches Template gerade geladen wird, aktivieren Sie den Debug-Modus:

// In wp-config.php
define('POLSKI_TEMPLATE_DEBUG', true);

Im Debug-Modus wird jedes Template von HTML-Kommentaren umschlossen, die den Pfad angeben:

<!-- polski template: /themes/your-theme/polski/omnibus/price-display.php -->
...
<!-- /polski template -->

Probleme melden: github.com/wppoland/polski/issues

Diese Seite dient ausschließlich Informationszwecken und stellt keine Rechtsberatung dar. Konsultieren Sie vor der Umsetzung einen Anwalt. Polski for WooCommerce ist Open-Source-Software (GPLv2), die ohne Gewährleistung bereitgestellt wird.