Trong hướng dẫn đơn giản này, tôi sẽ chỉ cho bạn cách ẩn giá sản phẩm và thêm vào nút giỏ hàng mà không cần chỉnh sửa plugin WooCommerce.
Các bước sau sẽ hoạt động với bất kỳ chủ đề nào.
Tạo tệp PHP mới
Đầu tiên, chúng ta sẽ tạo một tệp mới “no-add-to-cart-button.php” và lưu vào thư mục yourthemefolder / woocommerce. Nếu thư mục woocommerce không có sẵn trong thư mục chủ đề của bạn, bạn sẽ tạo nó. Đây là mã của tệp PHP đó:Tình huống 1: Ẩn Giá & Nút Đối với Tất cả Khách hàng.
Mở tệp functions.php của bạn và thả mã sau vào cuối tệp./** * Hides the price and add-to-cart button from the product * * @copyright paulchinmoy.com * @author Paul Chinmoy **/ add_action( 'init', 'paulc_hide_price_add_to_cart_button', 1000 ); function paulc_hide_price_add_to_cart_button() { add_filter( 'woocommerce_get_price_html', '__return_false' ); add_filter( 'woocommerce_loop_add_to_cart_link', '__return_null' ); add_filter( 'wc_get_template', 'paulc_wc_get_template', 90, 2 ); } /** * Hides the add-to-cart button from the single product page * * @copyright paulchinmoy.com * @author Paul Chinmoy **/ function paulc_wc_get_template( $located, $template_name ) { $new_path = get_stylesheet_directory_uri() . '/woocommerce/no-add-to-cart-button.php'; $templates = array( 'single-product/add-to-cart/simple.php', 'single-product/add-to-cart/grouped.php', 'single-product/add-to-cart/variable.php', 'single-product/add-to-cart/external.php' ); if( in_array( $template_name, $templates ) ) { return $new_path; } return $located; }
Tình huống 2: Ẩn Giá & Nút Chỉ dành cho Khách hàng đã Đăng xuất
Mở tệp functions.php của bạn và thả mã sau vào cuối tệp./** * Hides the price and add-to-cart button from the product * * @copyright paulchinmoy.com * @author Paul Chinmoy **/ add_action( 'init', 'paulc_hide_price_add_to_cart_button', 1000 ); function paulc_hide_price_add_to_cart_button() { if( is_user_logged_in() ) return; add_filter( 'woocommerce_get_price_html', '__return_false' ); add_filter( 'woocommerce_loop_add_to_cart_link', '__return_null' ); add_filter( 'wc_get_template', 'paulc_wc_get_template', 90, 2 ); } /** * Hides the add-to-cart button from the single product page * * @copyright paulchinmoy.com * @author Paul Chinmoy **/ function paulc_wc_get_template( $located, $template_name ) { $new_path = get_stylesheet_directory_uri() . '/woocommerce/no-add-to-cart-button.php'; $templates = array( 'single-product/add-to-cart/simple.php', 'single-product/add-to-cart/grouped.php', 'single-product/add-to-cart/variable.php', 'single-product/add-to-cart/external.php' ); if( in_array( $template_name, $templates ) ) { return $new_path; } return $located; }
Tình huống 3: Chỉ ẩn nút Thêm vào giỏ hàng
Mở tệp functions.php của bạn và thả mã sau vào cuối tệp./** * Hides the add-to-cart button from the product * * @copyright paulchinmoy.com * @author Paul Chinmoy **/ add_action( 'init', 'paulc_hide_add_to_cart_button', 1000 ); function paulc_hide_add_to_cart_button() { add_filter( 'woocommerce_loop_add_to_cart_link', '__return_null' ); add_filter( 'wc_get_template', 'paulc_wc_get_template', 90, 2 ); } /** * Hides the add-to-cart button from the single product page * * @copyright paulchinmoy.com * @author Paul Chinmoy **/ function paulc_wc_get_template( $located, $template_name ) { $new_path = get_stylesheet_directory_uri() . '/woocommerce/no-add-to-cart-button.php'; $templates = array( 'single-product/add-to-cart/simple.php', 'single-product/add-to-cart/grouped.php', 'single-product/add-to-cart/variable.php', 'single-product/add-to-cart/external.php' ); if( in_array( $template_name, $templates ) ) { return $new_path; } return $located; }