Thủ thuật WordPress


Home / WordPress / Thủ thuật WordPress / Cách tạo thêm CUSTOM TAXONOMY trong WordPress

Cách tạo thêm CUSTOM TAXONOMY trong WordPress

Mặc định trong WordPress có hỗ trợ bạn sẵn 2 khái niệm để phân loại nội dung là Category và Tag. Vậy chúng ta có thể tự thêm một khái niệm khác tương tự 2 cái có sẵn nhưng có thể sử dụng cùng lúc hay là không? Câu trả lời là hoàn toàn được và chúng ta sẽ sử dụng tính năng Custom Taxonomy có trong WordPress để làm, cũng giống như khái niệm Custom Post Type mà thôi.

Thông thường Custom Taxonomy được sử dụng khi bạn cần tạo thêm một cái gì đó để phân loại nội dung mà không phải dùng đến category và tag, ví dụ như tạo serie, tỉnh thành, loại,…..

Không dài dòng như Custom Post Type, Custom Taxonomy khá dễ sử dụng vì nó ngắn gọn, chỉ cần bạn viết một vài đoạn code là xong hoặc có thể sử dụng các plugin như TypesCustom Post Type UI để tạo.

Cấu trúc code tạo Custom Taxonomy

Để tạo Custom Taxonomy thì chúng ta chỉ cần khai báo mẫu ngắn gọn như sau:

Giải thích:

  1. Đầu tiên là tạo một function tên tao_taxonomy() chứa các code tạo custom taxonomy và kích hoạt nó vào Action Hook tên là init.
  2. Biến $label là để chứa các tham số xác định tên hiển thị của taxonomy, ví dụ như Serie, Loại sản phẩm,…
  3. Biến $args dùng để chứa các tham số chỉ thuộc tính của taxonomy muốn tạo, nó chỉ có vài dòng thôi và ngay bên dưới mình sẽ liệt kê các tham số.
  4. Hàm register_taxonomy() được dùng để khởi tạo một taxonomy. Trong đó, loai-san-pham là tên của taxonomy cần tạo, post là tên post type được phép sử dụng taxonomy này và cuối cùng là truyền tham số từ biến $args vào để nó trở thành thuộc tính của taxonomy.

Dễ hiểu đúng không nào, và dưới đây là code đầy đủ tạo một custom taxonomy.

Ở đoạn trên, các tham số thì mình nghĩ các bạn có thể tự hiểu được, riêng duy nhất có một tham số rất quan trọng đó là hierarchical. Nếu bạn đặt là true thì nó sẽ có thể phân cấp mẹ-con, giống category, nếu bạn đặt là false thì nó sẽ giống tính năng tag.

Và đây là kết quả.

Kết quả sau khi tạo Custom Taxonomy

Thế là xong rồi đấy, bây giờ bạn vào đăng một post mới thì cũng sẽ có phần tạo các term trong custom taxonomy bình thường.

Tạo custom taxonomy nhanh với GenerateWP

Không cần viết lại đoạn code trên, bạn có thể vào đây và chọn thông số cho custom taxonomy cần tạo và copy code của họ cung cấp là xong.

Đừng quên lưu lại Permalink

Sau khi tạo xong custom taxonomy, hãy vào Settings -> Permalinks và ấn nút Save Changes lần nữa để tránh lỗi 404 khi nhấp vào link từng danh mục trong taxonomy.

Hiển thị danh sách các danh mục của taxonomy trong bài viết

Mặc định khi bạn viết một bài mới mà có chọn category hay tag thì nó cũng hiển thị ở trong bài viết mà cụ thể là nó được gọi ngắn gọn thông qua template tags the_tags và the_categories().

Nhưng khi dùng custom taxonomy ta sẽ dùng một template tag cực kỳ hữu ích khi làm việc với custom taxonomy, đó là the_terms().

Trong đoạn trên, bạn chỉ cần thay lại cái loai-san-pham thành tên custom taxonomy của bạn là ok.

Hiển thị toàn bộ bài viết và danh mục trong custom taxonomy

Chẳng hạn nếu bạn muốn hiển thị toàn bộ bài viết và term trong custom taxonomy kiểu thế này..

Thì có thể sử dụng đoạn code dưới đây.

Đặt đoạn này vào file functions.php trước để có thể sử dụng loại nhiều lần.

Sau đó nếu bạn muốn dùng thì chỉ cần viết đoạn dưới đây vào vị trí cần hiển thị và thay lại tên post type và tên taxonomy lại nhé.

Hiển thị toàn bộ danh mục trong custom taxonomy

Đặt đoạn dưới đây vào vị trí cần hiển thị và thay lại tên taxonomy nhé.

Lời kết

Tới đây mình hy vọng là bạn đã phần nào hiểu rõ được khái niệm custom taxonomy là gì và cách ứng dụng vói nó ra sao. Đừng quên bình luận gửi câu hỏi nếu bạn cần trợ giúp.

Mục Lục