Làm thế nào để ẩn nút Thêm vào giỏ hàng hoặc Giá của WooCommerce cho người dùng chưa đăng nhập?

Source: Làm thế nào để ẩn nút Thêm vào giỏ hàng hoặc Giá của WooCommerce cho người dùng chưa đăng nhập?
Tôi sẽ chỉ cho bạn cách ẩn nút Thêm vào giỏ hàng hoặc Giá sản phẩm WooCommerce có điều kiện. Ví dụ: bạn sẽ có thể loại bỏ nút thêm vào giỏ hàng và giá chỉ cho người dùng chưa đăng nhập. Tất cả những điều này bạn có thể làm mà không cần bất kỳ plugin nào. Chúng ta cùng nhau tìm hiểu nhé!


Cách ẩn giá sản phẩm, thay thế nút Thêm vào giỏ hàng bằng nút “Đăng nhập để xem giá” cho người dùng chưa đăng nhập
Đầu tiên, chúng ta hãy xem cách hiển thị giá và nút thêm vào giỏ hàng cho người dùng đã đăng nhập theo cách “Đăng nhập để xem giá”.

Sau đó, nhập và dán mã sau vào tệp function.php của chủ đề hoặc chủ đề con của bạn:
add_action( 'init', 'show_price_for_logged_in_users' );
function show_price_for_logged_in_users() {
if ( ! is_user_logged_in() ) {
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_price', 10 );
remove_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_price', 10 );
add_action( 'woocommerce_single_product_summary', 'user_mesage', 31 );
add_action( 'woocommerce_after_shop_loop_item', 'user_mesage', 11 );
}
}
function user_mesage() {
echo '<a class="button" href="' . get_permalink( wc_get_page_id('myaccount') ) . '">' . __('Đăng nhập để xem giá', 'woocommerce') . '';
}
Sau đó kết quả sẽ được hiển thị như ảnh chụp màn hình bên dưới.

Làm cách nào để ẩn nút thêm vào giỏ hàng của sản phẩm đối với người dùng chưa đăng nhập?

Bây giờ, có thể bạn không muốn ẩn giá mà chỉ cần ẩn nút thêm vào giỏ hàng. Đừng lo lắng vì nó cũng rất dễ thực hiện. Chỉ cần dán mã này vào trong tệp function.php của chủ đề hoặc chủ đề con của bạn.
function catalogue_mode_for_logged_out_users() {
$isLoggedIn = is_user_logged_in();
if ( false == $isLoggedIn ) {
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
}
}
add_action( 'wp', 'catalogue_mode_for_logged_out_users' );
// Makes add to available for logged in users
add_filter( 'woocommerce_is_purchasable', 'keep_add_to_cart_button', 10, 2 );
function keep_add_to_cart_button( $is_purchasable, $product ) {
$isLoggedIn = is_user_logged_in();
if ( true == $isLoggedIn ) {
return true;
}
return false;
}
Lưu và kích hoạt và nếu mọi thứ đều ổn, đây sẽ là kết quả cuối cùng.

Phần kết
Vậy là bạn đã biết cách ẩn nút Thêm vào giỏ hàng hoặc Giá của WooCommerce.
Nếu thấy hay bạn có thể theo dõi phần kiến thức cơ bản về WordPress để biết thêm nhiều kiến thức mới.
Theo dõi fanpage để nhận những bài viết mới nhất: Hocwordpress Group
Via: sieucoder.com
from sieucoder.com https://ift.tt/3xDqInv
via Sieucoder.com
Nhận xét
Đăng nhận xét