Tôi đã tạo một trang taxonomy.php trong thư mục chủ đề WordPress của mình. Tôi muốn lấy id thuật ngữ hiện tại cho một hàm. Làm thế nào tôi có thể nhận được điều này?
get_query_var('taxonomy')
chỉ trả về thuật ngữ slug, tôi muốn ID
Tôi đã tạo một trang taxonomy.php trong thư mục chủ đề WordPress của mình. Tôi muốn lấy id thuật ngữ hiện tại cho một hàm. Làm thế nào tôi có thể nhận được điều này?
get_query_var('taxonomy')
chỉ trả về thuật ngữ slug, tôi muốn ID
Câu trả lời:
Đừng bận tâm! Tôi đã tìm thấy nó :)
get_queried_object()->term_id;
get_queried_object_id()
để lấy ID. Toàn bộ đoạn mã sẽ là$term_id = get_queried_object_id();
Đơn giản và dễ dàng!
get_queried_object_id()
taxonomy.php
trang trong thư mục mẫu wordpress của tôi, tôi muốn lấy hiện tại term id
cho một chức năng.
Chỉ cần sao chép dán mã dưới đây!
Thao tác này sẽ in tên và mô tả phân loại hiện tại của bạn (tùy chọn)
<?php
$tax = $wp_query->get_queried_object();
echo ''. $tax->name . '';
echo "<br>";
echo ''. $tax->description .'';
?>
Nếu bạn đang ở trang phân loại.
Đó là cách bạn nhận được tất cả các chi tiết về phân loại.
get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
Đây là cách bạn lấy id phân loại
$termId = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) )->term_id;
Nhưng nếu bạn đang ở trong trang đăng (taxomony -> child)
$terms = wp_get_object_terms( get_queried_object_id(), 'taxonomy-name');
$term_id = $terms[0]->term_id;
<?php
$terms = get_the_terms( $post->ID, 'taxonomy');
foreach ( $terms as $term ) {
$termID[] = $term->term_id;
}
echo $termID[0];
?>
Xem wp_get_post_terms () , bạn sẽ làm như vậy:
global $post;
$terms = wp_get_post_terms( $post->ID, 'YOUR_TAXONOMY_NAME',array('fields' => 'ids') );
print_r($terms);
Đó là thuật ngữ slug bạn muốn. Có vẻ như bạn có thể lấy id như thế này nếu đó là thứ bạn cần:
function get_term_link( $term, $taxonomy = '' ) {
global $wp_rewrite;
if ( !is_object($term) ) {
if ( is_int( $term ) ) {
$term = get_term( $term, $taxonomy );
} else {
$term = get_term_by( 'slug', $term, $taxonomy );
}
}