Câu trả lời:
wp_get_object_terms () trả về các thuật ngữ được liên kết với một đối tượng (ví dụ: một bài đăng hoặc một trang hoặc bài đăng tùy chỉnh) dưới dạng văn bản (thông thường trong một mảng).
Từ trang Codex cho wp_get_object_terms ()
$productcategories = wp_get_object_terms($post->ID, 'productcategories');
Tuy nhiên @anu đã đúng, tôi đã tìm ra bạn có thể gọi hàm php là dải_tags để loại bỏ các thẻ của giá trị trả về.
$terms = get_the_term_list( $post->ID, 'tags' );
$terms = strip_tags( $terms );
$terms = strip_tags( $terms, '<li>' );
Tôi nghĩ cách tốt nhất là triển khai bộ lọc cho danh sách thuật ngữ, trích xuất thông qua regrec chỉ văn bản, từ danh sách
get_the_terms_list () được triển khai tại đây: http://core.trac.wordpress.org/browser/tags/3.0.4/wp-includes/carget-template.php#L948 .
$term_links = apply_filters( "term_links-$taxonomy", $term_links );
Bạn có thể thực hiện bộ lọc của riêng bạn.
Tôi cần điều tương tự và đã thử giải pháp Zack hoạt động tuyệt vời. Chẳng hạn, nếu bạn chỉ cần thuật ngữ để đặt id hoặc lớp css. Chỉ có một sự giải thích về giải pháp, chức năng được gọi là xấu, đúng là "get_the_term_list".
Tôi cho thấy ví dụ của tôi:
$terms = get_the_term_list( $post->ID, 'your_taxonomy_name' );
$terms = strip_tags( $terms );
$terms = wp_list_pluck( get_the_terms( get_the_ID(), 'your_taxonomy' ), 'name');
Ở đây $ terms là một mảng, vì vậy bạn có thể sử dụng vòng lặp foreach.
foreach( $terms as $term ) {
echo $term;
}
get_the_terms()
. Xem trang codex để biết thông tin.