get_terms so với get_clists: có vấn đề gì không?


7

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_termsvà 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:


8

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_pagechỉ là một gói add_submenu_page. Đó chắc chắn không phải là ví dụ duy nhất ( add_submenu_pagetrê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__liketham 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.


3

Một trong những khác biệt quan trọng nhất (và không rõ ràng) giữa get_terms ()get_clists ()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ế.


Doh, điều này có thể không đúng. Vui lòng bỏ qua cho đến khi tôi có cơ hội xác minh sự cố trước đây mà tôi gặp phải. Lời xin lỗi của tôi.
Brent Clark

1
Bạn có thấy câu trả lời được chấp nhận đã giải thích điều này?
Chris_O

@BrentClark Bạn đã bao giờ tìm hiểu xem điều này có đúng không? Đó là một câu trả lời hữu ích hơn cho tôi.
Django Reinhardt

1

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 );
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.