Để lấy ID của danh mục hiện tại trong WordPress, bạn có thể sử dụng hàm get_queried_object()
. Hàm này sẽ trả về đối tượng của danh mục mà bạn đang truy cập. Dưới đây là cách thực hiện:
Nếu bạn đang ở trang archive của một danh mục (ví dụ: category.php
), bạn có thể lấy ID của danh mục hiện tại như sau:
<?php
$current_category = get_queried_object();
$category_id = $current_category->term_id;
echo 'ID của danh mục hiện tại: ' . esc_html($category_id);
?>
get_category()
Bạn cũng có thể sử dụng get_category()
nếu bạn biết slug hoặc ID của danh mục. Để lấy danh mục hiện tại trong trang danh mục archive:
<?php
$current_category = get_queried_object();
if ($current_category) {
$category_id = $current_category->term_id;
echo 'ID của danh mục hiện tại: ' . esc_html($category_id);
}
?>
Nếu bạn muốn lấy ID của danh mục hiện tại trong một vòng lặp (ví dụ: trong single.php
), bạn có thể lấy danh mục của bài viết hiện tại và sử dụng ID của danh mục đầu tiên:
<?php
$categories = get_the_category();
if (!empty($categories)) {
$first_category_id = $categories[0]->term_id;
echo 'ID của danh mục đầu tiên của bài viết: ' . esc_html($first_category_id);
}
?>
Bạn nên kiểm tra nếu biến $current_category
không phải là null
trước khi truy cập thuộc tính term_id
, để tránh lỗi nếu không có danh mục nào được tìm thấy.
<?php
$current_category = get_queried_object();
if ($current_category) {
$category_id = $current_category->term_id;
echo 'ID của danh mục hiện tại: ' . esc_html($category_id);
} else {
echo 'Không có danh mục nào.';
}
?>
Các phương pháp trên sẽ giúp bạn lấy ID của danh mục hiện tại trong WordPress một cách dễ dàng và hiệu quả.