Personnaliser WooCommerce avec des hooks sans toucher au cœur ni au thème parent
Obtenez le code pour personnaliser WooCommerce avec des actions et des filtres dans votre propre plugin : bon hook, sécurité, compatibilité HPOS et checkout en blocs, plan de test en préproduction. Conçu pour ChatGPT, Claude, Gemini et Microsoft Copilot. Il comprend 4 variables personnalisables et vous pouvez le copier gratuitement en un clic.
Intermédiaire · Code · En attente de relecture éditoriale
Prompt
Agis comme développeur WordPress et WooCommerce senior qui respecte les standards de code WordPress.
Contexte :
- Personnalisation souhaitée : {{personnalisation}}
- Où elle doit apparaître ou agir : {{zone}}
- Versions de WordPress et WooCommerce : {{versions}}
- Thème et constructeur de pages utilisés : {{theme}}
Livrables :
1. Approche : quels hooks (actions ou filtres) WooCommerce ou WordPress tu utiliseras et pourquoi ; si une option native ou un réglage le permet sans code, dis-le d'abord.
2. Avertissement de compatibilité : si {{zone}} utilise le panier ou le checkout en blocs, explique quels hooks classiques n'y fonctionnent pas et l'alternative (API d'extensibilité des blocs ou Store API).
3. Le code complet sous forme de petit plugin (en-tête de plugin, préfixe unique des fonctions, vérification d'ABSPATH et de l'activation de WooCommerce), pas dans le functions.php du thème parent.
4. Sécurité : assainir les entrées, échapper les sorties (esc_html, esc_attr, wp_kses_post), nonces dans les formulaires et vérification des capacités dans l'administration.
5. Données de commande compatibles HPOS : utiliser les méthodes de WC_Order (get_meta, update_meta_data, save) plutôt que d'accéder directement aux postmeta, et déclarer la compatibilité.
6. Chaînes traduisibles avec __() et le text domain du plugin.
7. Un plan de test sur un site de préproduction : cas normaux, produits variables, codes promo, commande sans compte et désactivation du plugin.
Contraintes :
- Ne modifie aucun fichier du cœur de WordPress ou de WooCommerce.
- Si tu n'es pas sûr qu'un hook existe dans ma version, indique [À VÉRIFIER dans la documentation WooCommerce].
- Sauvegarde le site avant d'installer du code en production.
- Si la personnalisation est ambiguë, pose-moi la question avant d'écrire le code.
Format : sections numérotées, le plugin dans un bloc de code PHP et les étapes d'installation.Comment l'utiliser
Expliquez le résultat attendu et sur quelle page. Installez d’abord le plugin généré sur une copie de préproduction, vérifiez panier et commande avec votre thème, puis déployez-le en production.
Exemple d'utilisation
Personnalisation : champ obligatoire « Numéro de TVA intracommunautaire » au checkout, enregistré dans la commande et affiché dans l’e-mail · Zone : checkout · Versions : WordPress 6.6, WooCommerce 9 · Thème : Astra avec Elementor.
Exemple de résultat
2. Avertissement de compatibilité
Sous WooCommerce 9.x, les nouvelles installations utilisent le bloc Panier, où woocommerce_before_cart ne se déclenche pas. Ce plugin couvre le panier classique (shortcode [woocommerce_cart]) ; pour le bloc, il faudrait l’API d’extensibilité des blocs [À VÉRIFIER dans la doc WooCommerce].
3. Plugin
<?php
/**
* Plugin Name: Message livraison offerte
* Description: Affiche dans le panier classique le montant restant pour la livraison offerte.
* Version: 1.0.0
* Requires Plugins: woocommerce
* Text Domain: message-livraison-offerte
*/
defined( 'ABSPATH' ) || exit;
const MLO_SEUIL = 50.0; // [À COMPLÉTER] identique au montant minimum de la méthode « Livraison gratuite »
add_action( 'before_woocommerce_init', function () {
if ( class_exists( \Automattic\WooCommerce\Utilities\FeaturesUtil::class ) ) {
\Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', __FILE__, true );
}
} );
add_action( 'woocommerce_before_cart', 'mlo_afficher_message' );
function mlo_afficher_message(): void {
if ( ! function_exists( 'WC' ) || ! WC()->cart ) {
return;
}
$reste = MLO_SEUIL - (float) WC()->cart->get_displayed_subtotal();
if ( $reste > 0 ) {
wc_print_notice(
sprintf(
/* translators: %s: montant restant pour la livraison offerte */
esc_html__( 'Plus que %s pour profiter de la livraison offerte.', 'message-livraison-offerte' ),
wp_kses_post( wc_price( $reste ) )
),
'notice'
);
}
}
wc_price() formate dans la devise de la boutique (euros). Testez en préproduction avec des codes promo : selon que la livraison offerte est calculée avant ou après remise, ajustez le sous-total utilisé…
Informations clés
- Catégorie
- Programmation et développement · WordPress
- Type de résultat
- Code
- Niveau
- Intermédiaire
- Conçu pour
- ChatGPT, Claude, Gemini et Microsoft Copilot
- Vérifié sur
- En attente de vérification éditoriale
- Variables
- Personnalisation, Zone, Versions et Thème et constructeur
- Langue
- Français
- Prix
- Gratuit, sans inscription
- Mis à jour
- 07/11/2026
Questions fréquentes
Pourquoi un plugin dédié plutôt que functions.php ?
Parce que le code survit aux changements et aux mises à jour du thème et se désactive en un clic en cas de problème. Si vous modifiez le thème parent, une mise à jour effacera vos changements.
Qu’est-ce que HPOS et pourquoi cela me concerne ?
C’est le stockage des commandes haute performance de WooCommerce, qui place les commandes dans des tables dédiées. Le code qui lit ou écrit directement les postmeta peut cesser de fonctionner : utilisez les méthodes de WC_Order.
Les hooks classiques fonctionnent-ils dans le checkout en blocs ?
Beaucoup ne fonctionnent pas, car le checkout en blocs est rendu autrement. Vérifiez le type de checkout de votre boutique et, s’il est en blocs, utilisez l’API d’extensibilité des blocs.
À quoi sert ce prompt ?
Obtenez le code pour personnaliser WooCommerce avec des actions et des filtres dans votre propre plugin : bon hook, sécurité, compatibilité HPOS et checkout en blocs, plan de test en préproduction.
Avec quels outils d'IA fonctionne-t-il ?
Il est conçu pour ChatGPT, Claude, Gemini et Microsoft Copilot. Nous ne l'avons pas encore vérifié sur ces outils ; les résultats peuvent donc varier de l'un à l'autre.
Comment personnaliser le prompt ?
Cliquez sur « Personnaliser » et remplissez les variables (Personnalisation, Zone, Versions et Thème et constructeur). Le texte se met à jour instantanément et vous pouvez ensuite le copier en un clic. Les valeurs sont stockées uniquement dans votre navigateur.
Faut-il de l'expérience pour l'utiliser ?
Il est de niveau intermédiaire : il vaut mieux connaître le sujet pour fournir un bon contexte et relire le résultat d'un œil critique.
Ce prompt est-il gratuit ?
Oui. Tous les prompts de HomeCasa Prompts sont gratuits, sans inscription ni abonnement. Vous pouvez aussi les utiliser dans des projets professionnels.
Puis-je me fier au résultat de l'IA ?
Considérez-le comme un brouillon de qualité : vérifiez toujours les données, les chiffres et les affirmations importantes avant de publier ou de prendre des décisions.