Tôi còn khá mới mẻ với wordpress và đang bắt gặp những điều mới mỗi ngày - một là hôm nay khi tôi tình cờ gặp get_terms
và nhận thấy rằng về cơ bản nó giống như get_category
.
Bất kỳ lý do cụ thể để sử dụng một hoặc khác? Có cái gì tôi đang thiếu?
Tôi còn khá mới mẻ với wordpress và đang bắt gặp những điều mới mỗi ngày - một là hôm nay khi tôi tình cờ gặp get_terms
và nhận thấy rằng về cơ bản nó giống như get_category
.
Bất kỳ lý do cụ thể để sử dụng một hoặc khác? Có cái gì tôi đang thiếu?
Câu trả lời:
Khi bạn tìm hiểu về WordPress, bạn sẽ thấy rằng WordPress có rất nhiều chức năng bao bọc. Ví dụ, đó add_theme_page
chỉ là một gói add_submenu_page
. Đó chắc chắn không phải là ví dụ duy nhất ( add_submenu_page
trên thực tế, nó có một loạt các hàm bao. Nếu bạn nhìn vào nguồn choget_categories()
, bạn sẽ thấy rằng nó cũng là một trình bao bọc cho get_terms()
(tôi chỉ tự mình học được điều đó, cảm ơn!).
Tôi thấy rằng các chức năng liên quan đến phân loại học là một số phức tạp nhất. Rất nhiều người trong số họ đưa ra những lập luận rất giống nhau và trả lại những điều tương tự với rất ít sự khác biệt. Trong trường hợp này, get_terms()
có một name__like
tham số get_category()
không. Có lẽ có sự khác biệt nhỏ khác quá.
Theo sở thích cá nhân, tôi cố gắng sử dụng get_terms()
càng nhiều càng tốt. Trong một số trường hợp, như add_theme_page
đó là chức năng được đề xuất (có lẽ vì vậy WordPress có thể thay đổi trang Chủ đề và giữ cho chức năng đó hoạt động), nhưng trong các trường hợp khác như thế này, tôi không nghĩ nó có nhiều khác biệt. Nếu không có gì khác, sự quen thuộc giúp tôi làm nhiều hơn với nó nhanh hơn. Tuy nhiên, đôi khi một số hàm trả về danh sách HTML wp_list_categories()
có thể hữu ích.
Một trong những khác biệt quan trọng nhất (và không rõ ràng) giữa get_terms () và get_clists () là get_clists () là một hàm bao bọc cho get_terms ('category') . Điều này có nghĩa là bạn không thể có được các phân loại tùy chỉnh với get_clists () và phải sử dụng get_terms () thay thế.
Có thể truy vấn phân loại tùy chỉnh với get_categories
thí dụ:
// Taxonomy query
$venue_args = array(
'child_of' => $venue_id,
'taxonomy' => 'wpmf-category',
'hide_empty' => false
);
$venue_cats = get_categories( $venue_args );