5 magnifiques astuces WooCommerce #5

Publié le 28 juillet 2015 par Amerigeau @arnaudmerigeau
28 juillet 2015

Dernier volet pour la série des astuces d’intégration pour WooCommerce. Pour rappel, WooCommerce est un plugin de vente en ligne basé sur WordPress.

5 Best WooCommerce snippets for WordPress, part 5

Les bouts de code doivent être placés dans le fichier functions.php de votre thème pour fonctionner.

C’est parti donc pour cette quatrième série de 5 bouts de code à utiliser sur WooCommerce :

1 – Exclure une catégorie du widget catégorie WooCommerce

add_filter( 'woocommerce_product_categories_widget_args', 'woo_product_cat_widget_args' );

function woo_product_cat_widget_args( $cat_args ) {

	$cat_args['exclude'] = array('16');

	return $cat_args;
}

2 – Traduire rapidement une chaîne

add_filter('gettext',  'translate_text');
add_filter('ngettext',  'translate_text');

function translate_text($translated) {
     $translated = str_ireplace('Choose and option',  'Select',  $translated);
     return $translated;
}

3 – Supprimer des catégories de produits de la page boutique

add_action( 'pre_get_posts', 'custom_pre_get_posts_query' );

function custom_pre_get_posts_query( $q ) {

	if ( ! $q->is_main_query() ) return;
	if ( ! $q->is_post_type_archive() ) return;

	if ( ! is_admin() & is_shop() & ! is_user_logged_in() ) {

		$q->set( 'tax_query', array(array(
			'taxonomy' => 'product_cat',
			'field' => 'slug',
			'terms' => array( 'color', 'flavor', 'spices', 'vanilla' ), // Don't display products in these categories on the shop page
			'operator' => 'NOT IN'
		)));

	}

	remove_action( 'pre_get_posts', 'custom_pre_get_posts_query' );

}

4 – Nombre de ventes associées par page / par ligne

remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_upsell_display', 15 );
add_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_upsells', 15 );

if ( ! function_exists( 'woocommerce_output_upsells' ) ) {
	function woocommerce_output_upsells() {
	    woocommerce_upsell_display( 3,3 ); // Display 3 products in rows of 3
	}
}

5 – Ajouter un type de paiement à l’admin WooCommerce

add_action( 'woocommerce_email_after_order_table', 'add_payment_method_to_admin_new_order', 15, 2 );

function add_payment_method_to_admin_new_order( $order, $is_admin_email ) {
  if ( $is_admin_email ) {echo '</pre>
<strong>Payment Method:</strong> ' . $order->payment_method_title . '
<pre>';
  }
}

Et c’est fini pour cette série de billets dédiés à WooCommerce

Tags: