ווקומרס woocommerce – איך לעשות שהמלאי של המוצר או ערכים של המלאי יהיו מופעלים בצורה דיפולטיבית ?
לאחורנה התבקשתי לעשות על ידי אחד הלקוחות שלי זה שפותחים מוצר חדש קוראים כמה דברים:
- שניהול מלאי מסומ דיפולטיבית באופציה לאפשר ניהול מלאי ברמת המוצר
- שיש מוצר 1 קיים במלאי בצורה דיפולטיבית
- ושבאופציה של לאפשר הזמנה מראש? תיבחר האפשרות של הפעל, אבל תודיע ללקוח
- שיהיה מסומן מצב מלא יהיה במלאי, כמובן
לפניכם הפונקציה הבאה שעונה על כל הדרישות של הלקוח. יש כמובן לשים אותה ב functions.php של תבנית הבת של האתר וורדפרס שלכם. אפשר להוריד או לשנות את אחד מהפרמטרים שאתם רוצים
function save_product_meta( $post_id, $post, $update ) { if ( ! $update ) { update_post_meta( $post_id, '_manage_stock', 'yes' ); // לאפשר ניהול מלאי ברמת המוצר update_post_meta( $post_id, '_stock_status', 'instock' ); // מצב מלא יהיה במלאי update_post_meta( $post_id, '_backorders', 'notify' ); // הפעל, אבל תודיע ללקוח update_post_meta( $post_id, '_stock', 1 ); // מוצר 1 קיים במלאי } } add_action( 'save_post_product', 'save_product_meta', 10, 3 );
באותה צורה אנחנו יכולים גם להגדיר דיפולטיבית פרמטרים אחרים שיוזנו כשפותחים מוצר חדש
update_post_meta( $post_id, '_visibility', 'visible' ); update_post_meta( $post_id, 'total_sales', '0' ); update_post_meta( $post_id, '_downloadable', 'no' ); update_post_meta( $post_id, '_virtual', 'yes' ); update_post_meta( $post_id, '_regular_price', '' ); update_post_meta( $post_id, '_sale_price', '' ); update_post_meta( $post_id, '_purchase_note', '' ); update_post_meta( $post_id, '_featured', 'no' ); update_post_meta( $post_id, '_weight', '' ); update_post_meta( $post_id, '_length', '' ); update_post_meta( $post_id, '_width', '' ); update_post_meta( $post_id, '_height', '' ); update_post_meta( $post_id, '_sku', '' ); update_post_meta( $post_id, '_product_attributes', array() ); update_post_meta( $post_id, '_sale_price_dates_from', '' ); update_post_meta( $post_id, '_sale_price_dates_to', '' ); update_post_meta( $post_id, '_price', '' ); update_post_meta( $post_id, '_sold_individually', '' );