PrestaShop est dédié au e-commerce, certes, mais d’autres solutions existent comme Magento, Open Cart mais aussi WooCommerce basée sur WordPress. Il m’arrive de travailler sur cette solution marchande dont voici quelques snippets forts utiles.
Pour approfondir ce sujet, consultez notre article 5 magnifiques astuces WooCommerce #4.
5 Best WooCommerce snippets for WordPress
WooCommerce est une des solutions e-commerce pour WordPress plutôt robuste même si certaines fonctionnalités manquent par rapport à PrestaShop, notamment : règles panier, règles de prix catalogue, statistiques avancées, etc.
Tous ces bouts de code doivent être placés dans le fichier functions.php de votre thème pour fonctionner.
C’est parti donc pour 5 bouts de code à utiliser sur WooCommerce :
1 – Ajouter un e-mail destinataire quand la commande est terminée
[php]
function woo_extra_email_recipient($recipient, $object) {
$recipient = $recipient . ‘, your@email.com’;
return $recipient;
}
add_filter( ‘woocommerce_email_recipient_customer_completed_order’, ‘woo_extra_email_recipient’, 10, 2);
[/php]
2 – Rediriger le bouton d’ajout panier à la page commande
[php]
add_filter (‘add_to_cart_redirect’, ‘redirect_to_checkout’);
function redirect_to_checkout() {
global $woocommerce;
$checkout_url = $woocommerce->cart->get_checkout_url();
return $checkout_url;
}
[/php]
3 – Trier les produits par prix, date ou nom
[php]
add_filter(‘woocommerce_default_catalog_orderby’, ‘custom_default_catalog_orderby’);
function custom_default_catalog_orderby() {
return ‘date’; // Can also use title and price
}
[/php]
4 – Fixer un montant minimum de commande
[php]
add_action( ‘woocommerce_checkout_process’, ‘wc_minimum_order_amount’ );
function wc_minimum_order_amount() {
global $woocommerce;
$minimum = 50;
if ( $woocommerce->cart->get_cart_total(); < $minimum ) {
$woocommerce->add_error( sprintf( ‘You must have an order with a minimum of %s to place your order.’ , $minimum ) );
}
}
[/php]
5 – Afficher les produits en solde
[php]
function woo_have_onsale_products() {
global $woocommerce;
// Get products on sale
$product_ids_on_sale = array_filter( woocommerce_get_product_ids_on_sale() );
if( !empty( $product_ids_on_sale ) ) {
return true;
} else {
return false;
}
}
// Example:
if( woo_have_onsale_products() ) {
echo ‘have onsale products’;
} else {
echo ‘no onsale product’;
}
[/php]
To be continued…
