WooCommerce B2B: Cách thiết lập cửa hàng buôn bán
Nhiều vấn đề cần quan tâm về Cách thiết lập cửa hàng buôn bán! Lĩnh vực thương mại điện tử đang chứng kiến sự tăng trưởng đáng kinh ngạc, năm này qua năm khác, không có kết cục nào có thể thấy trước được. Điều này cũng đúng với thương mại điện tử B2B, nhưng không có nhiều lựa chọn nền tảng tốt cho các doanh nghiệp vừa và nhỏ muốn bán buôn. Có một số giải pháp SaaS trên thị trường, nhưng đây là những giải pháp tốn kém, mã nguồn đóng và chủ yếu hướng tới các doanh nghiệp lớn hơn.
Nếu bạn là chủ doanh nghiệp hoặc nhà phát triển, WooCommerce là một giải pháp miễn phí, linh hoạt và mạnh mẽ.
WooCommerce có phù hợp với các cửa hàng B2B không? – thiết lập cửa hàng buôn bán
WooCommerce là một giải pháp tuyệt vời cho các cửa hàng thương mại điện tử, nhưng nó không được phát triển đặc biệt cho bán buôn, vì vậy ngay từ đầu nó thiếu nhiều tùy chọn quan trọng. Tuy nhiên, bạn có thể sử dụng một plugin bán buôn mạnh mẽ như B2BKing để mở rộng WooCommerce và thêm tất cả các chức năng giữa doanh nghiệp với doanh nghiệp mà bạn có thể cần.
Có hai khía cạnh khác mà bạn nên biết khi chọn WooCommerce cho dự án B2B của mình:
- WooCommerce sẽ yêu cầu cập nhật plugin thường xuyên để đảm bảo nó an toàn và hoạt động chính xác.
- Tùy thuộc vào cấu hình lưu trữ và trang web của bạn, môi trường WordPress đôi khi có thể hoạt động hơi chậm. Tuy nhiên, có những cách để tối ưu hóa và tăng tốc nó như thông qua các plugin như WP Rocket (hoặc các plugin tối ưu hóa và lưu bộ nhớ đệm khác).
Mặc dù nó không hoàn hảo nhưng WooCommerce hiện đang cung cấp năng lượng cho hơn 20% cửa hàng trực tuyến trên thế giới và có những lý do chính đáng cho điều đó: miễn phí, mã nguồn mở, mạnh mẽ và an toàn. Những phẩm chất tương tự cũng làm cho nó trở thành một lựa chọn tuyệt vời cho các cửa hàng bán buôn.
Cửa hàng B2B khác với cửa hàng điện tử thông thường như thế nào?
Bán hàng cho doanh nghiệp thường là một trải nghiệm rất khác và mang tính cá nhân hơn là bán trực tiếp cho người tiêu dùng. Người mua là doanh nghiệp thông thái, cởi mở trong đàm phán và muốn nhận được ưu đãi và chiết khấu lớn khi mua số lượng lớn. Danh mục giá, tùy chọn chiết khấu và tùy chọn thanh toán và vận chuyển có thể rất khác nhau giữa các khách hàng, tùy thuộc vào các yếu tố như quy mô kinh doanh, quy mô đơn hàng hoặc các mối quan hệ kinh doanh hiện có.
Từ quan điểm phát triển trang web, điều này trở thành điều cần thiết đối với mức độ linh hoạt kỹ thuật cao khi nói đến các quy tắc định giá, chiết khấu, vận chuyển và đặt hàng.
Bán cho các doanh nghiệp cũng đưa ra nhu cầu về các tính năng như:
- Giấu giá cho khách
- Mẫu đăng ký kinh doanh
- Hỗ trợ số VAT (hoặc ID thuế khác)
- Miễn giảm thuế
- Trích dẫn yêu cầu
- Các trường thanh toán và thanh toán tùy chỉnh
- Đơn đặt hàng bán buôn
- Khả năng hỗ trợ nhiều người dùng trên tài khoản người mua (đối với cấu trúc công ty)
Hãy tiếp tục và xem xét cách một số tính năng này có thể được triển khai trong WooCommerce. Các phần tiếp theo sẽ hướng tới các nhà phát triển nhiều hơn và tôi sẽ chia sẻ một vài đoạn mã mà tôi hy vọng bạn sẽ thấy hữu ích, cũng như các plugin miễn phí mà bạn có thể sử dụng.
1. Ẩn giá cho người dùng khách
Bạn có thể làm điều này với hai bộ lọc WooCommerce. Đầu tiên, hãy sử dụng woocommerce_get_price_html để thay đổi giá hiển thị thành “Login to view prices”.
[code]
add_filter( ‘woocommerce_get_price_html’, ‘b2bking_hide_prices_guest_users’, 10, 2 );
function b2bking_hide_prices_guest_users( $price, $product ){
if ( ! is_user_logged_in() ){
return esc_html__( ‘Login to view prices’, ‘your-plugin-text-domain’ );
} else {
return $price;
}
}
[/code]
Sau khi chúng ta thực hiện xong việc này, giá sẽ không còn hiển thị nữa và sẽ được thay thế bằng văn bản của chúng tôi. Tuy nhiên, điều này là chưa đủ vì người dùng vẫn có thể thêm các sản phẩm này vào giỏ hàng và xem giá của chúng. Giải pháp được cung cấp cho chúng tôi bởi bộ lọc phù hợp hơn có tên woocommerce_is_purchasable.
[code]
add_filter( ‘woocommerce_is_purchasable’, ‘b2bking_disable_purchasable_guest_users’ );
function b2bking_disable_purchasable_guest_users( $purchasable ){
if ( ! is_user_logged_in() ){
return false;
} else {
return $purchasable;
}
}
[/code]
Sau khi bạn thêm sản phẩm này, người dùng khách sẽ không thể mua sản phẩm nữa và nút “add to cart” sẽ không còn khả dụng. Một điều đáng nói nữa là bạn có thể gặp rắc rối khi sử dụng các biểu mẫu tìm kiếm AJAX, tùy thuộc vào cách chúng được thiết lập. Một cách nhanh chóng để sửa lỗi đó là thêm mã trên vào mã chính của bạn và kiểm tra AJAX bằng cách gói mã bên trong:
[code]
if ( wp_doing_ajax() ){
// code here
}
[/code]
Đây là kết quả
Nếu bạn quan tâm đến một giải pháp thay thế plugin vì bạn không quen với việc viết mã, B2BKing có chức năng này và các chức năng hạn chế quyền truy cập của khách khác, chẳng hạn như tùy chọn ẩn hoàn toàn trang web hoặc ẩn giá cho các sản phẩm hoặc danh mục riêng lẻ.
2. Đăng ký kinh doanh hoặc các biểu mẫu đăng ký B2B và B2C riêng biệt
Những gì bạn muốn làm ở đây là thêm các trường tùy chỉnh như “Company Name”, “Address”, “VAT ID”, v.v.
Bạn có thể sử dụng mã này để thêm trường tùy chỉnh cho tên công ty:
[code]
add_action( ‘woocommerce_register_form’, ‘b2bking_custom_registration_field’ );
function b2bking_custom_registration_field(){
echo ‘<label>’ . esc_html__( ‘Company name’, ‘your-custom-text-domain’ ) . ‘</label>’;
echo ‘<input type=”text” name=”billing_company”>’;
}
[/code]
Nếu bạn muốn đồng bộ trường này với trường thanh toán WooCommerce cho tên công ty khi đăng ký, bạn có thể thực hiện việc này bằng cách sử dụng móc woocommerce_create_customer và lưu tên công ty dưới dạng meta người dùng, sử dụng các trường tương tự mà WooCommerce sử dụng: billing_first_name, billing_company, billing_city, …:
[code]
add_action( ‘woocommerce_created_customer’, ‘b2bking_save_custom_registration_fields’ );
function b2bking_save_custom_registration_fields( $user_id ) {
$field_value = sanitize_text_field( filter_input( INPUT_POST, ‘billing_company’ ) );
if ( $field_value !== NULL ){
update_user_meta( $user_id, ‘billing_company’, $field_value );
}
}
[/code]
Làm cách nào bạn có thể tạo các trường biểu mẫu B2B và B2C riêng biệt? Bạn có thể thêm trường “Select” vào đăng ký theo cách được giải thích ở trên và sử dụng một chút JavaScript để xác định xem người dùng chọn “Individual” hay “Company”. Hiển thị hoặc ẩn các trường đăng ký như Tên công ty tùy thuộc vào những gì người dùng chọn.
Nếu bạn muốn tránh mã hóa, có một số giải pháp plugin miễn phí để mở rộng đăng ký, chẳng hạn như https://wordpress.org/plugins/user-registration/ cũng có các tùy chọn cho nhiều biểu mẫu đăng ký, mặc dù việc tạo đăng ký dành riêng cho B2B có thể yêu cầu một chút công việc phụ của bạn.
Nếu bạn đang tìm kiếm một giải pháp cao cấp, B2BKing cung cấp một số mã ngắn tiện dụng, dễ sử dụng mà bạn có thể thêm vào bất kỳ trang nào và tạo biểu mẫu đăng ký kinh doanh.
3. Hình thức đặt hàng sỉ
Khách hàng doanh nghiệp thường biết chính xác những gì họ muốn, cho đến SKU, vì vậy việc thêm mẫu đơn đặt hàng bán buôn vào trang web của bạn sẽ giúp khách hàng đặt hàng nhanh chóng và trông bạn chuyên nghiệp.
Làm thế nào bạn có thể thêm một? Không có đoạn mã nhanh nào có thể làm được điều này, vì vậy tôi nghĩ plugin là giải pháp tốt nhất của bạn.
Có một plugin miễn phí mà tôi đã tự mình thử nghiệm, trông và hoạt động tuyệt vời: https://wordpress.org/plugins/woocommerce-bulk-order-form/
B2BKing cũng có triển khai độc quyền của riêng mình, bạn có thể thấy trong hình ảnh tiếp theo:
4. Cơ cấu giá bán buôn
Câu hỏi liên quan ở đây là: làm thế nào để thiết lập các mức giá khác nhau cho những người dùng khác nhau? Có 2 cách để thực hiện điều này: thay đổi giá trực tiếp hoặc thêm chiết khấu.
Để thêm chiết khấu giỏ hàng cho người dùng hoặc danh mục người dùng, hãy sử dụng mã này:
[code]
add_action( ‘woocommerce_cart_calculate_fees’, ‘b2bking_cart_discount’ );
function b2bking_cart_discount( $cart ){
$cart->add_fee( ‘B2B Discount’, -10 );
}
[/code]
Đoạn mã trên sử dụng một chút thủ thuật bằng cách thêm một khoản phí âm, đó là một khoản giảm giá. Đoạn mã trên không có tác dụng gì nhiều, nó chỉ thêm giảm giá 10 đô la cho tất cả người dùng. Hãy mở rộng mã một chút:
[code]
function b2bking_cart_discount( $cart ){
$user_id = get_current_user_id();
$user_status = get_user_meta( $user_id, ‘user_status’, true );
if ( $user_status === ‘b2b’ ){
$cart->add_fee( ‘B2B Discount’, -10 );
}
}
[/code]
Cái này thế nào? Giờ đây, mã sẽ kiểm tra xem trạng thái meta của người dùng có phải là ‘b2b’ hay không và chỉ giảm giá cho người dùng b2b.
Làm thế nào để bạn đặt trạng thái meta? Bạn có thể đặt điều đó khi đăng ký bằng cách sử dụng hook woocommerce_create_customer mà tôi đã sử dụng ở trên trong phần bài viết thứ 2 và một dòng mã đơn giản. Hàm update_user_meta được sử dụng cho cả việc cập nhật và tạo meta người dùng.
[code]
update_user_meta( $user_id, ‘user_status’, ‘b2b’ );
[/code]
Điều gì sẽ xảy ra nếu bạn muốn đặt các cấu trúc phức tạp với các mức giá khác nhau cho các sản phẩm khác nhau cho những người dùng khác nhau?
Điều này phức tạp hơn một chút nhưng bạn có thể sử dụng các nguyên tắc tương tự. Trong WooCommerce, một sản phẩm là một “post” và bạn có thể đặt dữ liệu meta bài đăng cho nó. Ví dụ: bạn có thể thêm meta bài đăng có tên b2b_price, để có giá riêng cho người dùng b2b. Đây là mã.
[code]
update_post_meta( $post_id, ‘b2b_price’, 15 ); // 15 is the price for b2b users
[/code]
Làm thế nào để bạn chỉ hiển thị giá này cho người dùng b2b?
[code]
add_filter(‘woocommerce_product_get_price’, ‘b2bking_fixed_price’, 99, 2 );
add_filter(‘woocommerce_product_get_regular_price’, ‘b2bking_fixed_price’, 99, 2 );
add_filter(‘woocommerce_product_variation_get_regular_price’, ‘b2bking_fixed_price’, 99, 2 );
add_filter(‘woocommerce_product_variation_get_price’, ‘b2bking_fixed_price’, 99, 2 );
function b2bking_fixed_price( $price, $product ) {
// check if the user is B2B or not
$current_user_id = get_current_user_id();
$current_user_status = get_user_meta( $current_user_id, ‘user_status’, true );
if ( $current_user_status !== ‘b2b’ ){
// if user is not b2b show the normal price
return $price;
} else {
// get the current product’s price for B2B users
$current_product_id = $product->get_id();
$b2b_price = get_post_meta( $current_product_id, ‘b2b_price’, true );
return $b2b_price;
}
}
[/code]
5. Thiết lập miễn giảm thuế
Điều này dễ dàng hơn bạn nghĩ! Có một chức năng rất tiện dụng mà bạn có thể sử dụng trong WooCommerce sẽ thực hiện việc này cho bạn và thậm chí quan tâm đến việc hiển thị giá trong hầu hết các trường hợp: set_is_vat_exempt (). Tên hay, phải không?
Chức năng này thậm chí sẽ làm cho nó để người dùng B2B nhìn thấy giá có hậu tố “excluding tax“, trong khi người dùng B2C thấy giá cho biết “including tax“.
[code]
add_action( ‘init’, ‘b2bking_tax_exemption’ );
function b2bking_tax_exemption(){
// first we check if the user is tax exempt
$tax_exempt = get_user_meta( get_current_user_id(), ‘is_tax_exempt’, true );
if ( $tax_exempt === ‘exempt’ ){
$customer = WC()->customer;
$customer->set_is_vat_exempt( true );
} else {
// the next line is only necessary if the user’s exempt status changes dynamically, such as based on billing country
$customer->set_is_vat_exempt( false );
}
}
[/code]
B2BKing – WooCommerce B2B & Plugin bán buôn
Tôi hy vọng một số điều tôi chia sẻ trên đây sẽ hữu ích cho bạn. Tuy nhiên, việc trang bị cho WooCommerce các chức năng B2B là một nhiệm vụ phức tạp và nếu bạn quyết định mua một plugin cao cấp để sử dụng thời gian của bạn tốt hơn là tự viết mã.
Với ý nghĩ đó, tôi sẽ chia sẻ một vài lời về B2BKing. Đây là dự án mà tôi và nhóm của tôi đã thực hiện trong một thời gian, với mục tiêu biến WooCommerce thành một giải pháp B2B có khả năng, một giải pháp thay thế cho các nền tảng SAAS tốn kém.
Chúng tôi không ngừng phát triển và hỗ trợ nó như một dự án dài hạn và nó hiện có hơn 137 tính năng bao gồm business registration, tax exemptions, dynamic pricing rules, VAT support, built-in messaging system, multiple buyers on account, offers, a dedicated B2B&B2C hybrid mode và hơn thế nữa.
Tuần này, chúng tôi tự hào đã được Envato chọn làm “Plugin nổi bật của tuần” và được giới thiệu trên trang đầu của CodeCanyon.
Chúng tôi cung cấp bản demo trực tiếp mà bạn có thể kiểm tra bất cứ lúc nào, cả phần phụ trợ và giao diện người dùng: Live Demo
Nếu bạn có bất kỳ câu hỏi nào về bài viết, về plugin hoặc chỉ muốn gửi lời chào, đừng ngại! Vui lòng liên hệ với nhà phát triển plugin hàng xóm thân thiện của bạn.
Dịch vụ thiết kế website chuyên nghiệp tại Web MTP
Liên hệ ngay với chúng tôi nếu bạn đang gặp khó khăn trong việc thiết kế web nhé!
Website: https://webmtp.com/
Hotline: 0931 912 379
Tìm hiểu thêm: WooCommerce: Kiểm tra việc người dùng đã mua sản phẩm chưa
Mời bạn xem nhiều bài hấp dẫn khác