Un configurateur 3D
sur WordPress.
2 lignes de code.
<viewer-3dvue> est un Web Component natif. Il fonctionne dans n'importe quel contexte WordPress : widget HTML Elementor, bloc Gutenberg, shortcode, template PHP custom, CPT avec ACF. Aucun plugin dédié, aucune dépendance.
add_action('wp_enqueue_scripts', function() { wp_enqueue_script( 'viewer-3dvue', 'https://cdn.jsdelivr.net/gh/3dvue/api@v4/viewer-3dvue-min.js', [], null, true ); });
<viewer-3dvue name="monViewer" src="https://app.3dvue.fr/view?p=AB01-CD02" ></viewer-3dvue> <!-- C'est tout. -->
Prêt en 3 étapes. Plusieurs façons de l'intégrer.
WordPress est flexible : le composant s'adapte à votre stack. Via wp_enqueue_script(), un widget Elementor, un shortcode ou directement dans un template PHP. À vous de choisir.
-
1Charger le script : 3 façons
La méthode recommandée est
wp_enqueue_script()dansfunctions.php. Mais vous pouvez aussi l'inclure via WPCode (snippet global), ou directement dans un widget HTML Elementor si vous ne voulez pas toucher aux fichiers.Si vous utilisez WPCode, créez un snippet de type "HTML" avec la balise<script>et activez-le sur toutes les pages ou uniquement les pages produit.3 méthodes au choix// 1. Via functions.php (recommandé) add_action('wp_enqueue_scripts', function() { wp_enqueue_script('viewer-3dvue', 'https://cdn.jsdelivr.net/gh/3dvue/api@v4/viewer-3dvue-min.js', [], null, true); }); // 2. Via WPCode : snippet HTML global <script src="https://cdn.jsdelivr.net/gh/3dvue/api@v4/viewer-3dvue-min.js"></script> // 3. Dans un widget HTML Elementor <script src="https://cdn.jsdelivr.net/gh/3dvue/api@v4/viewer-3dvue-min.js"></script> <viewer-3dvue name="monViewer" src="..."></viewer-3dvue>
-
2Placer le composant
Collez la balise dans votre template PHP, dans un widget HTML Elementor, ou via un shortcode. Pour les CPT avec ACF, vous pouvez conditionner l'affichage selon la valeur d'un champ personnalisé.
Sur ce site, 3DVue utilise exactement cette méthode : widget HTML Elementor, pas de plugin, aucun code PHP. La balise est collée directement dans le widget.template-produit.php : avec ACF<?php // Récupérer l'ID configurateur depuis un champ ACF $viewer_id = get_field('configurateur_3d_id'); ?> <?php if ($viewer_id) : ?> <viewer-3dvue name="monViewer" src="https://app.3dvue.fr/view?p=<?php echo esc_attr($viewer_id); ?>" ></viewer-3dvue> <?php endif; ?>
-
3Brancher vos sélecteurs de variantes
WordPress n'a pas de système de variations natif : tout se fait via vos composants HTML custom. Ajoutez les attributs
viewer-3dvuesur vos boutons ou selects de configuration produit. Aucun JS à écrire.Sélecteurs couleur HTML pur<!-- Boutons couleur custom --> <button viewer-3dvue="monViewer" viewer-3dvue-clic="setMaterial" viewer-3dvue-meshs-materials='{"1":"0n","2":"1a"}' >Chêne naturel</button> <!-- Select de finition --> <select viewer-3dvue="monViewer" viewer-3dvue-change="setMaterial" viewer-3dvue-mesh="1" > <option value="0n">Laqué noir</option> <option value="1a">Laqué blanc</option> <option value="2b">Chêne</option> </select>
Shortcode, Gutenberg
ou widget Elementor.
Le composant s'intègre dans tous les contextes WordPress. Choisissez la méthode adaptée à votre stack.
functions.php pour pouvoir l'insérer n'importe où depuis l'éditeur.// Dans functions.php add_shortcode('configurateur3d', function($atts) { $id = $atts['id'] ?? ''; return '<viewer-3dvue name="v" src="https://app.3dvue.fr/view?p=' . esc_attr($id) . '"></viewer-3dvue>'; } ); // Dans l'éditeur : // [configurateur3d id="AB01-CD02"]
<!-- Bloc HTML personnalisé Gutenberg --> <viewer-3dvue name="monViewer" src="https://app.3dvue.fr/view?p=AB01-CD02" ></viewer-3dvue> <!-- Boutons de variation dans le même bloc --> <button viewer-3dvue="monViewer" viewer-3dvue-clic="setMaterial" viewer-3dvue-meshs-materials='{"1":"0n"}' >Noir</button>
Pour les cas avancés.
Contrôle programmatique complet depuis votre JS WordPress : compatible avec tous les builders et frameworks utilisés sur WordPress.
// functions.php : passer les données ACF au JS wp_localize_script('mon-script', 'ViewerConfig', [ 'viewerId' => get_field('configurateur_id'), 'materials' => get_field('materials_map'), ]); // mon-script.js const viewer = document.querySelector('viewer-3dvue'); viewer.setMaterial(ViewerConfig.materials);
const viewer = document.querySelector('viewer-3dvue[name="monViewer"]'); // Changer les matériaux viewer.setMaterial({ "1": "0n", "3": "2b" }); // Charger un autre modèle viewer.loadModel("AB01-CD02"); // Capturer le rendu (ex: preview de commande) viewer.captureToBase64(); viewer.addEventListener("onCaptureBase64Complete", (e) => { console.log(e.detail.base64); });
À lire aussi
Ce configurateur dans votre secteur
Référence API, attributs HTML, exemples PHP WordPress, shortcodes. Tout est documenté et maintenu à jour.
Voir la documentationPas de ticketing automatisé. Vous parlez directement à Matthieu, le développeur qui a conçu l'API. Réponse sous 24h.
Prendre un RDVTestez le configurateur avant d'intégrer. Voyez ce que vos clients verront sur votre site WordPress.
Voir la démoPrêt à intégrer ?
On s'occupe des modèles 3D.
Vous gérez le code côté WordPress, on s'occupe de tout le reste : modélisation, matières, configuration. En 30 minutes on vous dit ce qu'on peut faire.