Người Viết : ViKiMi Editor

Chỉ sử dụng 1 Function get_terms() để nhận về danh sách Categories / Tags / Taxonomies !
Nếu bạn muốn lấy về danh sách các Category hoặc Tag hoặc bất kỳ Taxonomy nào. Có rất nhiều Function có thể sử dụng được cho bạn, nhưng hiệu quả nhất dành cho tất cả các trường hợp có thể dùng chung được đó chính là Function Get_terms() được cung cấp bởi WordPress. Đây là một Function không chỉ dùng cho các mặc định của WordPress, nó cũng có thể áp dụng cho tất cả các trường hợp Customize khác nữa.
Function Get_terms() :
get_terms( array|string $args = array(), array|string $deprecated = ” )
Nhận về danh sách các Categories / Tags hoặc bất kỳ Taxonomies nào. Bao gồm cả những Custom Taxonomies do người dùng tạo ra.
$args : Một mảng hoặc chuỗi các đối số
$deprecated : Mảng đối số, khi sử dụng định dạng tham số hàm kế thừa
+ Với các Phiên bản WordPress trước 4.5.0 Function Get_terms được sử dụng như sau :
<?php
$terms = get_terms( ‘post_tag’, array(
‘hide_empty’ => false,
) );
+ Với các Phiên bản WordPress 4.5.0 về sau Function Get_terms được sử dụng như sau :
<?php
$terms = get_terms( array(
‘taxonomy’ => ‘post_tag’,
‘hide_empty’ => false,
) );
+ Những đối số bạn có thể sử dụng & lấy về để nhận về các thông tin cần thiết :
[“term_id”]
[“name”]
[“slug”]
[“term_group”]
[“term_taxonomy_id”]
[“taxonomy”]
[“description”]
[“parent”]
[“count”]
[“filter”]
[“meta”]
(1) Nhận về CÁC CATEGORIES của WordPress, bao gồm các Permalink liên kết của từng Category. Tương tự có thể nhận về của CÁC TAGS / TAXONOMIES của WordPress. Với Function Get_Terms, có thể lấy về tất cả thông tin của một TAXONOMY nào, nó thực sự hiệu quả.
<?php
$args = array( ‘hide_empty=0’ & ‘orderby’ => ‘count’);
$terms = get_terms( ‘category’, $args );
if ( ! empty( $terms ) && ! is_wp_error( $terms ) ) {
$count = count( $terms );
$i = 0;
$term_list = ‘<p class=”crt_term-archive”>’;
foreach ( $terms as $term ) {
$i++;
$term_list .= ‘<a href=”‘ . esc_url( get_term_link( $term ) ) . ‘” alt=”‘ . esc_attr( sprintf( __( ‘View all post filed under %s’, ‘my_localization_domain’ ), $term->name ) ) . ‘”>’ . $term->name . ‘</a>’;
if ( $count != $i ) {
$term_list .= ‘ | ‘;
}
else {
$term_list .= ‘</p>’;
}
}
echo $term_list;
}
?>
(2) Cũng có thể tạo các Function thực thi tại function.php để lấy về các thông tin mong muốn. Các Function này như một mẫu chung để gọi toàn bộ khắp nơi trên WordPress. Dưới đây là một ví dụ tạo Function lấy về các TAGS của WordPress và có thể dùng ở mọi nơi :
<?php
function get_child_tags( $taxonomy_name, $termId, $args = array() ) {
$defaults = array(
‘taxonomy’ => $taxonomy_name,
‘orderby’ => ‘name’,
‘order’ => ‘ASC’,
‘hide_empty’ => true,
‘child_of’ => $termId,
);
$args = wp_parse_args( $args, $defaults );
$taxonomies = get_terms( $args );
if ( empty( $taxonomies ) || is_wp_error( $taxonomies ) ) {
return false;
}
return $taxonomies;
}
Function được gọi bằng cách và có thể sử dụng trực tiếp các dữ liệu được trả về :
$my_tags = get_child_tags(‘post_tag’);