Categories
ווקומרס

התאמה אישית של עמוד חנות בווקומרס

לשנות את ברירת מחדל של הופעת סדר המוצרים להופעה לפי שם בסדר יורד:

add_filter( 'woocommerce_get_catalog_ordering_args', 'condless_get_catalog_ordering_args' );
function condless_get_catalog_ordering_args( $args ) {
	$args = array( 'orderby' => 'title', 'order' => 'DESC' );
	return $args;
}

להוסיף למוצרים שדה של כמות (להפעיל את אפשרות כפתור AJAX):

add_filter( 'woocommerce_loop_add_to_cart_link', 'condless_quantity_inputs_for_loop_ajax_add_to_cart', 10, 2 );
function condless_quantity_inputs_for_loop_ajax_add_to_cart( $html, $product ) {
	if ( $product && $product->is_type( 'simple' ) && $product->is_purchasable() && $product->is_in_stock() && ! $product->is_sold_individually() ) {
		$class = implode( ' ', array_filter( array(
			'button',
			'product_type_' . $product->get_type(),
			$product->is_purchasable() && $product->is_in_stock() ? 'add_to_cart_button' : '',
			$product->supports( 'ajax_add_to_cart' ) ? 'ajax_add_to_cart' : '',
        ) ) );
	$html = sprintf( '%s%s<a rel="nofollow" href="%s" data-quantity="%s" data-product_id="%s" data-product_sku="%s" class="%s">%s</a>%s',
		'<form class="cart">',
		woocommerce_quantity_input( array(), $product, false ),
		esc_url( $product->add_to_cart_url() ),
		esc_attr( isset( $quantity ) ? $quantity : 1 ),
		esc_attr( $product->get_id() ),
		esc_attr( $product->get_sku() ),
		esc_attr( isset( $class ) ? $class : 'button' ),
		esc_html( $product->add_to_cart_text() ),
		'</form>'
		);
	}
	return $html;
}

add_action( 'wp_footer', 'condless_archives_quantity_fields_script' );
function condless_archives_quantity_fields_script() {
	?>
	<script type='text/javascript'>
		jQuery(function($){
			$(".add_to_cart_button.product_type_simple").on('click', function() { var $button = $(this); $button.attr('data-quantity', $button.parent().find('input.qty').val()); });
			$(document.body).on("adding_to_cart", function() { $("a.added_to_cart").remove(); });
		});
	</script>
	<?php
}

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *