Danh sách Hooks tùy chỉnh WooCommerce

Quảng cáo
Ads_ngang
Website dinhthuanit.com có bài Danh sách Hooks tùy chỉnh WooCommerce

Từ hơn 5 năm qua, WooCommerce được công nhận là plugin thương mại điện tử mạnh mẽ và dễ sử dụng nhất cho WordPress. Trong bài viết này, mình có biên tập mọi thứ các đoạn mã để có thể tùy chỉnh WooCommerce với tính năng được mở rộng.

Chuyển hướng khi thêm sản phẩm vào giỏ hàng

Đôi khi bạn cấp phép người dùng thêm sản phẩm vào giỏ hàng chỉ bằng cách nhấp vào một liên kết nào đó. Thật đơn giản để thực hiện, chỉ cần thêm tham số ?add-to-cart=974 ở cuối bất kỳ liên kết nào.

Trong thí dụ này, 974 là id sản phẩm và phải được thay thế bằng id của sản phẩm bạn muốn thêm vào giỏ hàng.

 http://yoursite.com/checkout/?add-to-cart=974 

Xóa trường địa chỉ tại trang thanh toán

Nếu bạn đang bán mặt hàng kỹ thuật số, bạn không cần thiết phải hỏi địa chỉ của người mua. Để loại bỏ các trường địa chỉ khỏi thanh toán, hãy chèn đoạn mã sau vào tệp functions.php trong giao diện WordPress của bạn:

 add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' ); function custom_override_checkout_fields( $fields ) { unset($fields['billing']['billing_first_name']); unset($fields['billing']['billing_last_name']); unset($fields['billing']['billing_company']); unset($fields['billing']['billing_address_1']); unset($fields['billing']['billing_address_2']); unset($fields['billing']['billing_city']); unset($fields['billing']['billing_postcode']); unset($fields['billing']['billing_country']); unset($fields['billing']['billing_state']); unset($fields['billing']['billing_phone']); unset($fields['order']['order_comments']); unset($fields['billing']['billing_address_2']); unset($fields['billing']['billing_postcode']); unset($fields['billing']['billing_company']); unset($fields['billing']['billing_last_name']); unset($fields['billing']['billing_city']); return $fields; }  

Thay đổi con số mặt hàng hiện trên trang

Một cách dễ dàng nhưng hiệu quả để xác định con số sản phẩm sẽ có hiện trên mỗi trang. Trong tỉ dụ này, 25 sản phẩm sẽ được hiển thị, cập nhật giá trị này với số sản phẩm mong muốn và thêm dòng này vào tệp functions.php.

 add_filter( 'loop_shop_per_page', create_function( '$cols', 'return 25;' ), 20 );  

Hiển thị thông điệp ở trên form đăng ký/đăng nhập

Dưới đây là một cách dễ dàng để tự động thêm thông báo tùy chỉnh ở trên biểu mẫu đăng nhập / đăng ký. Mã này sẽ được chèn vào tệp functions.php của bạn.

 add_action( 'woocommerce_before_customer_login_form', 'jk_login_message' ); function jk_login_message() { if ( get_option( 'woocommerce_enable_myaccount_registration' ) == 'yes' ) { ?>   

<?php } }

Xem thêm hướng dẫn:

  • sửa số lượng mặt hàng trên một hàng với woocommerce.
  • Thay đổi số lượng hiển thị mặt hàng liên quan trong woocommerce

Xóa bỏ breadcrumbs

Nếu bạn nghĩ breadcrumbs là không cần phải có với trang web WordPress của bạn, bạn có thể loại bỏ nó một cách đơn giản với đoạn mã sau.

 add_action( 'init', 'jk_remove_wc_breadcrumbs' ); function jk_remove_wc_breadcrumbs() { remove_action( 'woocommerce_before_main_content', 'woocommerce_breadcrumb', 20, 0 ); }  

Xem thêm:

  • Thay đổi hiển thị breadcrumbs của woocommerce wordpress theme

Chuyển đến trang phải trả khi thêm mặt hàng vào giỏ hàng

Một điều thú vị cấp phép bạn tự động chuyển hướng đến trang thanh toán khi mặt hàng đã được thêm vào giỏ hàng. Như nhiều tùy biến khác từ bài viết này, mã này sẽ có thêm nữa tệp functions.php

 function add_to_cart_checkout_redirect() { wp_safe_redirect( get_permalink( get_option( 'woocommerce_checkout_page_woocommerce_add_to_cart', 'add_to_cart_checkout_redirect', 16 );  

Thay thế “out of stock”

Nếu bạn đang bán sản phẩm độc đáo, sẽ được ý nghĩa hơn khi hiển thị “đã bán” thay vì nhãn “hết hàng” bởi mặc định. Để làm như vậy, bạn chỉ cần dán mã này vào tệp functions.php là xong.

 add_filter('woocommerce_get_availability', 'availability_filter_func'); function availability_filter_func($availability) { $availability['availability'] = str_ireplace('Out of stock', 'Sold', $availability['availability']); return $availability; }  

Giới hạn giao hàng đến các quốc gia được chọn

Nếu bạn chỉ sẵn sàng chuyển hàng cho những quốc gia cụ thể, bạn cũng đều có thể sử dụng mã bên dưới để thi hành việc đó. Các quốc gia cũng có thể được thêm vào mảng PHP.

 function woo_override_checkout_fields( $fields ) { $fields['shipping']['shipping_country'] = array( 'type' =>  'select', 'label' =>  __('My New Country List', 'woocommerce'), 'options' =>  array('AU' =>  'Australia') ); return $fields; } add_filter( 'woocommerce_checkout_fields' , 'woo_override_checkout_fields' );  

Hiển thị “sản phẩm đã có trong giỏ hàng” thay vì nút “thêm vào giỏ hàng”

Nếu khách truy cập đã thêm sản phẩm nào đó vào giỏ hàng của mình, có thể là một thông báo tuyệt vời để cho họ biết mặt hàng này đã có trong giỏ hàng. Ý tưởng bạn sẽ đổi nhãn nút Add to cart. Đây là một đoạn mã dễ dàng để làm điều đó. Chỉ cần thêm nó vào tệp functions.php của bạn.

 add_filter( 'woocommerce_product_single_add_to_cart_text', 'woo_custom_cart_button_text' ); function woo_custom_cart_button_text() { global $woocommerce; foreach($woocommerce-> cart-> get_cart() as $cart_item_key =>  $values ) { $_product = $values['data']; if( get_the_ID() == $_product-> id ) { return __('Already in cart - Add Again?', 'woocommerce'); } } return __('Add to cart', 'woocommerce'); } add_filter( 'add_to_cart_text', 'woo_archive_custom_cart_button_text' ); function woo_archive_custom_cart_button_text() { global $woocommerce; foreach($woocommerce-> cart-> get_cart() as $cart_item_key =>  $values ) { $_product = $values['data']; if( get_the_ID() == $_product-> id ) { return __('Already in cart', 'woocommerce'); } } return __('Add to cart', 'woocommerce'); }  

Thay thế phân trang mặc định cho WooCommerce

Cũng như WordPress, WooCommerce không sử dụng phân trang theo mặc định. Điều này có thể được thay đổi đơn giản trên WordPress với plugin WP PageNavi. Khi sử dụng WooCommerce, nó đòi hỏi chút ít nghiệp vụ sử dụng hooks để bạn thi hành điều này.

Điều trước mắt cần làm là cài đặt plugin WP PageNavi. Sau khi hoàn tất, chỉ cần mở tệp functions.php của bạn và dán mã sau.

 remove_action('woocommerce_pagination', 'woocommerce_pagination', 10); function woocommerce_pagination() { wp_pagenavi(); } add_action( 'woocommerce_pagination', 'woocommerce_pagination', 10);  

Trên này là các mã tùy chỉnh WooCommerce hay sử dụng, nếu bạn có thêm những tính năng tùy biến nào hay xin chia sẻ bình luận dưới bài viết này nhé.

Hãy cho mình biết suy nghĩ của bạn trong phần bình luận bên dưới bài viết này. Hãy theo dấu kênh chia sẻ kiến thức WordPress của TopVn trên Twitter và Facebook

Bài viết Danh sách Hooks tùy chỉnh WooCommerce được tổng hợp và biên tập bởi: dinhthuanit.com. Mọi ý kiến đóng góp và phản hồi vui lòng gửi Liên Hệ cho dinhthuanit.com để điều chỉnh. dinhthuanit.com xin cảm ơn.

Bài Viết Liên Quan


Bài Viết Khác


Quảng cáo
Ads_ngang