Cách đây không lâu mình có chia sẽ code tạo sku theo ID sản phẩm, tuy nhiên cách này nó sẽ bị tình trạng là ID của wordpress là chung cho tất cả post type và vì vậy nó tăng quá nhanh và để khắc phụ điều này chúng ta sẽ đánh mã sku (hay mã sản phẩm) theo số lượng sản phẩm thực tế, dưới đây là code (lưu ý code dùng trong class, anh em nào muốn xài dạng function thì chế lại nha):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
function create_sku_from_product_id($count){ $sku = ''; if(strlen($count) == 1){ $sku = 'A00'.$count; }elseif(strlen($count) == 2){ $sku = 'A0'.$count; }else{ $sku = 'A'.$count; } return $sku; } function auto_create_sku_after_post_product( $post_id, $post ) { if($post->post_type == "product"){ $args = array( 'post_type' => 'product', 'posts_per_page' => -1, 'post_status' => 'publish' ); $products = get_posts($args); $count = count($products); $sku = $this->create_sku_from_product_id($count); update_post_meta($post_id,'_sku',$sku); } } add_action( 'save_post', array($this,'auto_create_sku_after_post_product'), 20, 2 ); |
Mọi sự sao chép xin ghi rõ nguồn là fcwordpress.net
Chuyên trang về wordpress: hướng dẫn thiết kế theme, plugin, thủ thuật wordpress