Si vous êtes prêt à modifier le code de votre site WordPress/WooCommerce pour offrir à vos clients une option de Click & Collect, vous êtes au bon endroit. Dans cet article, nous vous expliquerons en détail comment configurer une solution simple et efficace.
Avant de commencer, nous allons devoir en quelques lignes de code, un plugin pour ajouter cette nouvelle méthode de livraison à votre boutique en ligne. La création de plugins Woocommerce, vous permet d’effectuer des mises à jours fonctionnalités sans affecter le code principal de votre thème et des autres plugins.
Besoin d’un spécialiste Woocommerce pour votre projet ? Contactez-moi
NOTE : Si le fait de devoir copier-coller du code informatique ou de modifier les fichiers WordPress vous fait peur, vous pouvez vous rendre en bas de page pour trouver une méthode facile.
Étape 1 : La création simple d’un mini plugin
Pour créer un plugin WordPress basique, à l’aide de vos accès FTP, rendez-vous dans les dossiers de votre site et commencez par créer un répertoire dans « wp-content/plugins ». Nommez le fichier principal « nom-du-plugin.php » avec les informations d’en-tête :
<?php
/**
* Plugin Name: Mon Plugin Click and collect
* Description: Mes fonctions personnalisées
* Version: 1.0
* Author: Votre nom
* Author URI: URL de votre site Web
*/
Enregistrez-le fichier puis activez le plugin depuis le tableau de bord WordPress, section « Extensions ».
Votre plugin sera alors fonctionnel, ajoutant des fonctionnalités personnalisées que vous saisirez dans ce fichier .php à votre site tout en préservant la stabilité de WordPress.
Étape 2 : Créer une nouvelle méthode de livraison
Dans cette étape, nous allons ajouter une nouvelle méthode de livraison qui permettra à vos clients de choisir le retrait en point de vente plutôt que la livraison traditionnelle. Le code ci-dessous vous permettra de créer cette méthode de livraison :
/**
* Fonction pour ajouter une méthode de livraison "Click and Collect" dans WooCommerce.
*/
function wpcac15_ajouter_click_and_collect_method( $methods ) {
// Crée une classe pour la méthode de livraison
class WC_Click_And_Collect_Shipping_Method extends WC_Shipping_Method {
/**
* Constructeur de la méthode de livraison.
*/
public function __construct() {
$this->id = 'click_and_collect'; // ID unique de la méthode de livraison
$this->method_title = 'Click and Collect'; // Nom affiché de la méthode de livraison
$this->method_description = 'Retirez votre commande en magasin'; // Description de la méthode de livraison
// Activer la méthode de livraison
$this->enabled = 'yes';
// Définir les coûts et les frais d'emballage ici si nécessaire
$this->init();
// Permettre à WooCommerce de gérer les calculs des frais
$this->supports = array(
'shipping-zones',
'instance-settings',
'instance-settings-modal',
);
}
/**
* Calcul des frais d'expédition.
*
* @param array $package Les détails du panier.
*/
public function calculate_shipping( $package = array() ) {
// Vous pouvez définir ici votre propre logique de calcul des frais de livraison.
// Par exemple, en fonction de la distance du magasin, du poids, etc.
// Vous devrez utiliser $this->add_rate() pour définir les frais de livraison.
}
}
// Enregistrez la classe comme une méthode de livraison dans WooCommerce
function ajouter_click_and_collect_method_to_shipping_methods( $methods ) {
$methods['click_and_collect'] = 'WC_Click_And_Collect_Shipping_Method';
return $methods;
}
add_filter( 'woocommerce_shipping_methods', 'ajouter_click_and_collect_method_to_shipping_methods' );
return $methods;
}
add_filter( 'woocommerce_shipping_methods', 'wpcac15_ajouter_click_and_collect_method' );
Une fois cette étape terminée, votre nouvelle méthode de livraison « Click and Collect » Woocommerce sera disponible dans la liste des méthodes d’expédition sur la page de panier de vos clients.
Egalement, Cette nouvelle méthode sera ajoutée à votre liste des méthodes d’expéditions disponibles sur la page de panier.
et visible sur votre facture PDF
Étape 3 : Afficher le choix du point de retrait dans l’édition de la commande
Vous pouvez également afficher le choix du point de retrait en magasin ou autre dans l’édition de la commande dans l’interface d’administration WooCommerce. Cette fonctionnalité permettra de mieux gérer les commandes Click & Collect. Voici comment faire :
Besoin d’un spécialiste Woocommerce pour votre projet ? Contactez-moi
Voici la fonction qui va vous permettre d’afficher l’information
// Afficher la méthode de livraison dans le détail de la commande en admin
function wpcac15_display_shipping_and_pickup_in_order( $order ) {
$shipping_methods = $order->get_shipping_methods();
$is_click_and_collect = false;
foreach ( $shipping_methods as $shipping_method ) {
if ( $shipping_method['method_id'] === 'Click and Collect' ) {
$is_click_and_collect = true;
break;
}
}
if ( $is_click_and_collect ) {
echo '<h3>Click and Collect </h3>';
echo '<p><strong>Oui</strong><br/></p>';
} elseif ( ! $is_click_and_collect ) {
echo '<h3>Click and Collect</h3>';
// pas de click and collecy
}
}
add_action( 'woocommerce_admin_order_data_after_shipping_address', 'wpcac15_display_shipping_and_pickup_in_order', 30, 5 );
Voilà, vous avez maintenant toutes les étapes nécessaires pour mettre en place une extension de retrait en magasin pour WooCommerce. Si vous avez besoin d’aide pour la configuration ou si vous avez des questions, n’hésitez pas à me contacter.
Étape bonus : Le click and collect woocommerce sans modification de code informatique
Vous souhaitez une méthode facile pour réaliser ce qui est décrit dans cet article, et avoir des options supplémentaires ? Sachez que je propose en téléchargement des plugins premium pour les e-commerce, et j’ai justement une solution, une extension permettant de mettre en place un service de retrait de commande en point de vente nommé « TD Click and Collect ».
Besoin d’un spécialiste Woocommerce pour votre projet ? Contactez-moi
Découvrez nos plugins WooCommerce
Améliorez votre boutique en ligne avec nos plugins personnalisés :
Automatisez vos promotions, multiple point de collecte, bon d’achat exclusif à chaque nouveau inscrit, …