<viewer-3dvue> ist ein natives Web Component. Es lässt sich in jedes Smarty-Template integrieren — product.tpl, Modul-Override oder benutzerdefinierter Hook. Kein zusätzliches PrestaShop-Modul erforderlich.
{* Im <head> oder Ihrem Hauptlayout *} <script src="https://cdn.jsdelivr.net/gh/3dvue/api@v4/viewer-3dvue-min.js"></script>
<viewer-3dvue name="meinViewer" src="https://app.3dvue.fr/view?p=AB01-CD02" ></viewer-3dvue> {* Das ist alles. *}
Ein natives Web Component, kompatibel mit den Smarty-Templates von PrestaShop 1.7 und 8.x. Keine PHP-Abhängigkeiten, kein Modul auf dem Addons Marketplace einzureichen.
Die empfohlene Methode ist, den Hook displayHeader aus einem benutzerdefinierten Modul oder direkt in Ihrem Template zu verwenden. Sie können es auch über product.tpl einbinden, wenn Sie auf Theme-Ebene arbeiten.
src-Attribut der Komponente ist die spezifische URL Ihres Konfigurators, die 3DVue bei der Projektlieferung bereitstellt.
public function hookDisplayHeader() { return '<script src="https://cdn.jsdelivr.net/gh/3dvue/api@v4/viewer-3dvue-min.js"></script>'; } // Oder direkt in Ihrem Smarty-Template: {* <script src="https://cdn.jsdelivr.net/gh/3dvue/api@v4/viewer-3dvue-min.js"></script> *}
Fügen Sie das Tag in Ihr Smarty-Produkttemplate ein, in der linken Spalte oder in einem dedizierten Bereich. Sie können die Anzeige mit {if} konditionieren, um es nur bei bestimmten Kategorien oder Referenzen anzuzeigen.
product.tpl und neue Hummingbird-Abschnitte.
{* Bei Bedarf nach Produkt-ID filtern *} {if $product.id == 42} <viewer-3dvue name="meinViewer" src="https://app.3dvue.fr/view?p=AB01-CD02" ></viewer-3dvue> {/if} {* Oder mit aktiviertem Debug *} <viewer-3dvue name="meinViewer" src="https://app.3dvue.fr/view?p=AB01-CD02" debug ></viewer-3dvue>
PrestaShop generiert Kombinations-Selects dynamisch. Fügen Sie die viewer-3dvue-Attribute über Smarty auf Ihren Kombinations-Selects hinzu, oder verwenden Sie die JS-API, um das native updateProduct-Ereignis von PrestaShop abzuhören.
{* Über HTML-Attribute auf Selects *} {foreach $product.groups as $group} <select viewer-3dvue="meinViewer" viewer-3dvue-change="setMaterial" viewer-3dvue-mesh="1" > {foreach $group.attributes as $attr} <option value="{$attr.id_material}"> {$attr.name} </option> {/foreach} </select> {/foreach}
Die Komponente hört automatisch auf click- und change-Ereignisse auf jedem Element mit den richtigen Attributen. Kompatibel mit den nativen Kombinations-Selects von PrestaShop und Swatch-Modulen.
{foreach $farben as $f} <button viewer-3dvue="meinViewer" viewer-3dvue-clic="setMaterial" viewer-3dvue-meshs-materials='{{"1":"{$f.id_mat}"}}' > {$f.name} </button> {/foreach}
updateProduct-Ereignis ab und synchronisieren den Viewer.const viewer = document.querySelector( 'viewer-3dvue[name="meinViewer"]' ); // PS-Kombinationsänderungen abhören document.addEventListener( 'updateProduct', (e) => { const idMat = e.detail.id_material; viewer.setMaterial({"1": idMat}); } );
Vollständige programmatische Steuerung — nützlich zur Synchronisation des Viewers mit dem AJAX-Kombinationssystem von PrestaShop oder für Bildaufnahme und BAT-Export.
const viewer = document.querySelector('viewer-3dvue[name="meinViewer"]'); // Mehrere Materialien auf einmal ändern viewer.setMaterial({ "1": "0n", "3": "2b" }); // Auf einem bestimmten Segment viewer.setMaterial({ "1": "1a" }, 1);
viewer.captureToBase64(); viewer.addEventListener("onCaptureBase64Complete", (e) => { const { base64 } = e.detail; // In ein verstecktes Feld des PS-Formulars einfügen document.querySelector('#add-to-cart-or-refresh input[name="config_img"]').value = base64; });
viewer.exportSVG(); viewer.addEventListener("onSVGExportComplete", (e) => { const { path, error } = e.detail; if (!error) console.log("BAT SVG:", path); });
API-Referenz, HTML-Attribute, Ereignisse, Smarty PrestaShop-Beispiele. Alles dokumentiert.
Dokumentation ansehenKein automatisiertes Ticketing. Sie sprechen direkt mit Matthieu, dem Entwickler der API. Antwort innerhalb von 24h.
Termin buchenTesten Sie den Konfigurator vor der Integration. Sehen Sie, was Ihre Kunden in Ihrem PrestaShop-Shop sehen werden.
Demo ansehenSie verwalten den Code auf der PrestaShop-Seite, wir kümmern uns um alles andere — Modellierung, Materialien, Konfiguration. In 30 Minuten sagen wir Ihnen, was wir tun können.