Découvrez comment simuler des commandes fictives automatiques sur WooCommerce pour tester efficacement votre site. Notre solution vous permet de créer des commandes régulières et non payées, semblables à de vraies transactions, afin d'évaluer et d'optimiser votre processus de vente. Idéal pour les administrateurs de sites WooCommerce cherchant à améliorer l'expérience utilisateur sans affecter les véritables commandes client.
Vous pouvez tester automatiquement votre site en simulant des Commandes WooCommerce Fictives. Une commande fictive ressemble en tout point à une commande normale : elle s'affiche dans le back-end de WooCommerce comme si elle avait été passée par un client. La seule différence est qu'elle n'est pas réellement payée.
Habituellement, lorsqu'une commande est passée sur WooCommerce avec un paiement par virement, celle-ci est mise en attente et doit être validée manuellement. Mais dans notre cas, la commande fictive est automatiquement marquée comme 'en cours' grâce à la fonction 'processing'.
Elle inclut également un identifiant client, un identifiant produit, et nécessite la création d'un compte client et d'un produit associé à cette commande.
En résumé, le code ajouté dans le fichier 'functions.php' de votre site effectuera automatiquement une commande toutes les heures environ, au nom de 'John Doe'. Cette commande inclura l'email, le téléphone, l'adresse, le code postal, la ville et le pays de John. Elle sera visible dans le compte de John, sous l'onglet 'Mes commandes' sur votre site."
function create_fictitious_order() {
$user_id = 2; // ID utilisateur de John Doe
$order = wc_create_order();
// Associer la commande à l'utilisateur (John Doe)
$order->set_customer_id($user_id);
// Ajoutez des détails à la commande ici
$order->add_product(wc_get_product(16), 1); // Utilisation de l'ID de produit 16
// Définir les détails de facturation et de livraison
$order->set_address(array(
'first_name' => 'John',
'last_name' => 'Doe',
'email' => '[email protected]',
'phone' => '555-555-5555',
'address_1' => '123 Main Street',
'city' => 'Anytown',
'state' => 'CA',
'postcode' => '12345',
'country' => 'US'
), 'billing');
$order->set_address(array(
'first_name' => 'John',
'last_name' => 'Doe',
// Autres détails de l'adresse
), 'shipping');
// Mettre à jour le statut de la commande en "Processing"
$order->update_status('processing');
$order->calculate_totals();
}
// Planifier la création de la commande fictive toutes les heures
if (!wp_next_scheduled('create_fictitious_order_cron')) {
wp_schedule_event(time(), 'hourly', 'create_fictitious_order_cron');
}
add_action('create_fictitious_order_cron', 'create_fictitious_order');
PHP
Ce code modifié génère automatiquement une commande sur votre site WooCommerce tous les 5 jours. Remplacez '[email protected]' par votre adresse email pour recevoir les notifications de commande. Assurez-vous aussi de mettre à jour les ID de produit et de client pour qu'ils correspondent à vos données clients (virtuels).
function create_fictitious_order() {
$user_id = 2; // ID utilisateur de John Doe
$order = wc_create_order();
// Associer la commande à l'utilisateur (John Doe)
$order->set_customer_id($user_id);
// Ajoutez des détails à la commande ici
$order->add_product(wc_get_product(16), 1); // Utilisation de l'ID de produit 16
// Définir les détails de facturation et de livraison
$order->set_address(array(
'first_name' => 'John',
'last_name' => 'Doe',
'email' => '[email protected]',
'phone' => '555-555-5555',
'address_1' => '123 Main Street',
'city' => 'Anytown',
'state' => 'CA',
'postcode' => '12345',
'country' => 'US'
), 'billing');
$order->set_address(array(
'first_name' => 'John',
'last_name' => 'Doe',
// Autres détails de l'adresse
), 'shipping');
// Mettre à jour le statut de la commande en "Processing"
$order->update_status('processing');
$order->calculate_totals();
}
// Ajouter un intervalle personnalisé de cinq jours
add_filter( 'cron_schedules', 'add_five_days_cron_interval' );
function add_five_days_cron_interval( $schedules ) {
$schedules['five_days'] = array(
'interval' => 5 * DAY_IN_SECONDS, // 5 jours en secondes
'display' => esc_html__( 'Every Five Days' ),
);
return $schedules;
}
// Planifier la création de la commande fictive tous les cinq jours
if (!wp_next_scheduled('create_fictitious_order_cron')) {
wp_schedule_event(time(), 'five_days', 'create_fictitious_order_cron');
}
add_action('create_fictitious_order_cron', 'create_fictitious_order');
PHP