הצגת כמות יחידות מוצר פר ואירציה
במאמר זה אסביר כיצד לשנות את אופן הצגת מספר היחידות (כמות) לפי ואירציה.
לאחרונה באחד האתרים שפיתחנו נתקלנו במצב שבו הלקוח מעוניין שנציג למשתמשים את כמות המוצרים לפי הואירציה עצמה ולא לפי סה״כ הכללי, כידוע באופן דיפולטיבי הווקומרס מציג לנו את סה״כ הכללי של כל ואירציות במוצר, למשל אם יש לנו חולצה מדגם ׳טי-שירט׳ בצבעים אדום וכחול, וכל צבע יש 20 יח׳, המערכת תציג לנו שיש 40 יח׳ מהמוצג, ולא תחלק כמות לכל מוצר באופן שבו הגדרנו.
כל מה שעליכם לעשות זה להוסיף action עם פונקציה בקובץ functions.php:
/**
* @snippet Display Variations' Name & Stock @ WooCommerce Shop Page
* @sourcecode https://studio-m.co.il
* @author Matan Mualem Studio M
* @testedwith WooCommerce 3.1.2
*/
add_action( 'woocommerce_after_shop_loop_item', 'MMW_echo_stock_variations_loop' );
function MMW_echo_stock_variations_loop(){
global $product;
if ($product->product_type == 'variable') {
foreach ($product->get_available_variations() as $key) {
$attr_string = '';
foreach ( $key['attributes'] as $attr_name => $attr_value) {
$attr_string[] = $attr_value;
}
if ( $key['max_qty'] > 0 ) { echo '
' . implode(', ', $attr_string) . ': ' . $key['max_qty'] .' in stock'; } else { echo '
' . implode(', ', $attr_string) . ': out of stock'; }
}
}
}
התוצאה:
077-504-3005-
-
-
-