Custom taxonomy trong wordpress
Last updated
Last updated
Mặc định khi cài wordpress lên thì trong phần post (Bài viết) chúng ta sẽ thấy có 2 phần là: Chuyên mục và thẻ. 2 phần này trong wordpress được gọi là taxonomy (Phân loại danh mục).
Việc đi tạo một phân loại danh mục mới có cấu trúc tương tự như chuyên mục hoặc thẻ, người ta gọi là custom taxonomy trong wordpress.
Ví dụ: Chúng ta có một custom post type là sản phẩm, bây giờ muốn chia sản phẩm theo từng danh mục thì mặc định wordpress không cung cấp sẵn. Chúng ta phải tạo một custom taxonomy “danh mục” để làm danh mục sản phẩm…
Để tạo custom taxonomy các bạn chèn đoạn code sau vào file functions.php của theme đang sử dụng nhé.
À mình sẽ tạo 1 custom taxomony là địa điểm trong post nhé.
hierarchical tham số có thể nhận 2 giá trị, nếu true thì chức năng tương tư chuyên mục, còn false thì chức năng tương tự thẻ
Hàm register_taxonomy nhận 3 tham số
‘dia-diem’ Đây là slug của taxonomy sau này dùng nó để get dữ liệu. Đặt tên tùy thích, viết liền không dấu
‘post’ đây là post type hiển thị taxonomy này. Ví dụ bạn muốn tạo taxonomy cho sản phẩm thì chổ này phải điền là ‘san-pham’ nha
$args là tham số khai báo phía trên
Ngoài cách tạo taxonomy bằng code như phía trên, thì cũng có rất nhiều plugin hỗ trợ việc này. Mình cũng đã có 1 bài viết về tạo custom taxonomy bằng plugin toolset types các bạn có thể tham khảo. Hoặc xem qua một số plugin free sau đây
Tương tự nhưng get category trong wordpress chúng ta dùng đoạn code sau chèn vào vị trí cần hiển thị trong theme nhé
Chú ý : Tham số taoxonomy nhận giá trị là slug của taxonomy mà khi tạo chúng ta khai báo nhé
Để get danh sách các vài viết thuộc 1 taxonomy nào dó mặc định chúng ta sẽ đặt tên file là : taxonomy-{slug}.php như ví dụ trên thì ta sẽ đặt tên file là taxonomy-dia-diem.php
Đối với new wp_query chúng ta sẽ có đoạn code get post như sau:
Chú ý: slug ở tham số trên là slug của taxonomy cần lấy nha.