Hướng dẫn thay đổi tiêu đề tab sản phẩm

Thay đổi tiêu đề tab sản phẩm

Hãy bắt đầu với điều đơn giản, may mắn là bạn có thể đổi tên bất kỳ tiêu đề tab sản phẩm nào, chỉ bằng cách thay đổi titlephần tử của $tabsmảng, ví dụ:

add_filter( 'woocommerce_product_tabs', 'misha_rename_additional_info_tab' );
 
function misha_rename_additional_info_tab( $tabs ) {
 
	$tabs['additional_information']['title'] = 'Product size';
 
	return $tabs;
 
}

Tất cả mã từ hướng dẫn này bạn có thể chèn vào functions.phptệp của mình , nhưng xin lưu ý rằng trừ khi bạn đang sử dụng chủ đề tùy chỉnh của mình, tốt hơn là nên chèn mã vào tệp của chủ đề con hoặc vào một plugin tùy chỉnh.

Và kết quả:

Hướng dẫn thay đổi tiêu đề tab sản phẩm 1

Nhân tiện, nếu bạn không cần một số tab sản phẩm WooCommerce mặc định, bạn có thể xem hướng dẫn khác của tôi về cách xóa chúng .

Đổi tên tab bài đánh giá

Nhưng nó không hoạt động theo cách tương tự đối với tab “Bài đánh giá”. Tại sao? Vì tiêu đề tab này cũng hiển thị số lượng đánh giá của khách hàng!

Được rồi, có hai cách tiếp cận khác nhau cho việc này, trong cách đầu tiên, chúng ta chỉ có thể str_replace()viết “Bài đánh giá” và không chạm vào số lượng.

add_filter( 'woocommerce_product_tabs', 'misha_rename_reviews_tab' );
 
function misha_rename_reviews_tab( $tabs ) {
 
	$tabs['reviews']['title'] = str_replace( 'Reviews', 'What customers are saying', $tabs['reviews']['title'] );
 
	return $tabs;
 
}

Trong cách tiếp cận thứ hai, chúng tôi có thể nhận được số lượng đánh giá từ $productđối tượng toàn cầu :

add_filter( 'woocommerce_product_tabs', 'misha_rename_reviews_tab' );
 
function misha_rename_reviews_tab( $tabs ) {
 
	global $product;
 
	$tabs['reviews']['title'] = 'What customers are saying (' . $product->get_review_count() . ') ';
 
	return $tabs;
 
}

Bất kể bạn sẽ chọn cách nào, nó sẽ hoạt động tốt:

Hướng dẫn thay đổi tiêu đề tab sản phẩm 2

Thay đổi tiêu đề tab sản phẩm

Được rồi, chúng tôi đã tìm ra cách đổi tên tab, nhưng nó không phải là một giải pháp hoàn chỉnh nếu không thay đổi cả tiêu đề tab 🤔

Mỗi tab có một móc lọc khác nhau cho phép thay đổi tiêu đề của nó, chúng ta hãy xem xét chúng một cách riêng biệt.

Thay đổi tiêu đề tab “Mô tả”

add_filter( 'woocommerce_product_description_heading', 'misha_description_heading' );
function misha_description_heading( $heading ){
 
	return 'My new heading';
 
}

Thay đổi tiêu đề tab “Thông tin bổ sung”

Mọi thứ rất giống với tab Mô tả . Trên thực tế, chúng tôi chỉ có cùng một mã nhưng với móc lọc khác nhau.

add_filter( 'woocommerce_product_additional_information_heading', 'misha_additional_info_heading' );
function misha_additional_info_heading( $heading ){
 
	return 'My new heading';
 
}

Thay đổi tiêu đề “Bài đánh giá”

Đây là nơi những điều thú vị đến. Vâng, chúng tôi có một móc lọc ở đây… đúng là như woocommerce_reviews_titlevậy nhưng .. nó chỉ hoạt động trong trường hợp bạn có đánh giá! Vì vậy, nếu một sản phẩm không có đánh giá của khách hàng, thì móc sẽ không hoạt động!

Tất nhiên tôi sẽ chỉ cho bạn một giải pháp, nhưng chúng ta hãy xem xét một ví dụ trong trường hợp có đánh giá:

add_filter( 'woocommerce_reviews_title', 'misha_reviews_heading', 10, 3 );
function misha_reviews_heading( $heading, $count, $product ){
 
	return 'What customers think about this product';
 
}

Như bạn có thể thấy, không cần thiết phải lấy số lượng đánh giá global $product như chúng ta đã làm trước đây , mọi thứ đã được cung cấp trong các đối số hook của bộ lọc, bạn thậm chí có thể truy cập một đối tượng WC_Product bên trong nó.

Và bây giờ là tin tức gây sốc – WooCommerce không có móc nối cho tiêu đề tab “Bài đánh giá” khi không có bài đánh giá nào! 😱

Nhưng tôi đã hứa với bạn một giải pháp, phải không? 🔥👇

add_filter( 'gettext', 'misha_no_reviews_heading', 20, 3 );
function misha_no_reviews_heading( $translated, $text, $domain ) {
 
	if( function_exists( 'is_product' ) && is_product() && $translated == 'Reviews' && $domain == 'woocommerce' ) {
		$translated = 'Ooops... No reviews yet. Please leave one!';
	}
 
	return $translated;
 
}
Kết quả:
Hướng dẫn thay đổi tiêu đề tab sản phẩm 3
0 0 vote
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
Hotline: 0974.0707.83(Zalo/Viber)
%d bloggers like this: