Giới thiệu về Custom Post Type (CPT) trong WordPress – Hướng dẫn từ A đến Z

1. Custom Post Type (CPT) là gì?

Mặc định, WordPress hỗ trợ các loại nội dung (post type) như: Bài viết (Posts), Trang (Pages), Media, Menu, Comments… Tuy nhiên, nếu bạn muốn tạo một loại nội dung riêng biệt như “Khóa học”, “Sản phẩm”, “Đánh giá” hay “Dự án”, bạn cần đến Custom Post Type (CPT).

CPT giúp bạn tổ chức và hiển thị nội dung theo cách riêng, không bị giới hạn bởi định dạng bài viết hoặc trang mặc định của WordPress.


2. Khi nào cần sử dụng CPT?

✅ Trường hợp nên dùng CPT:

  • Website bán hàng: Muốn có post type “Sản phẩm” thay vì dùng bài viết thông thường.
  • Website khóa học: Cần một post type “Khóa học” để tổ chức bài học.
  • Website đánh giá sản phẩm: Dùng CPT “Đánh giá” giúp quản lý nội dung tốt hơn.
  • Website tin tức chuyên ngành: Tạo CPT “Bài phân tích”, “Phỏng vấn” để dễ dàng phân loại.

❌ Khi nào không cần CPT?

  • Nếu nội dung bạn định tạo có thể tổ chức bằng Category hoặc Tag.
  • Khi số lượng post type không quá nhiều.

3. Cách tạo Custom Post Type trong WordPress

Có hai cách chính để tạo CPT: (1) Dùng Plugin(2) Tạo thủ công bằng code.

Cách 1: Dùng Plugin (CPT UI + ACF)

Cách này dành cho người không rành code hoặc muốn thao tác nhanh chóng.

🔹 Bước 1: Cài đặt Plugin

  • Cài đặt plugin Custom Post Type UI (CPT UI) và Advanced Custom Fields (ACF) từ WordPress Plugin Store.
  • Kích hoạt cả hai plugin.

🔹 Bước 2: Tạo CPT với CPT UI

  • Vào CPT UI → Add/Edit Post Types
  • Nhập thông tin CPT:
    • Post Type Slug: (viết liền, không dấu) – Ví dụ: khoa_hoc.
    • Plural Label: (Tên số nhiều) – Ví dụ: “Khóa học”
    • Singular Label: (Tên số ít) – Ví dụ: “Khóa học”
    • Supports: Chọn các tính năng như title, editor, thumbnail…
  • Nhấn Add Post Type để lưu.

🔹 Bước 3: Thêm Custom Field với ACF

  • Vào Custom Fields → Add New
  • Tạo nhóm trường, đặt tên, chọn Post Type = Khóa học.
  • Thêm các trường như “Giảng viên”, “Thời lượng”, “Giá khóa học”…
  • Nhấn Publish để lưu.

Bây giờ, bạn có thể tạo và hiển thị bài viết trong post type “Khóa học”.


Cách 2: Tạo CPT bằng Code (Cho Developer)

Thêm đoạn code sau vào file functions.php của theme:

function custom_post_type_khoa_hoc() {
    $args = array(
        'labels'      => array(
            'name'          => __('Khóa học'),
            'singular_name' => __('Khóa học')
        ),
        'public'      => true,
        'has_archive' => true,
        'menu_icon'   => 'dashicons-welcome-learn-more',
        'supports'    => array('title', 'editor', 'thumbnail', 'excerpt')
    );
    register_post_type('khoa_hoc', $args);
}
add_action('init', 'custom_post_type_khoa_hoc');

Sau khi thêm code, bạn sẽ thấy CPT “Khóa học” xuất hiện trong Admin Menu của WordPress.


4. Hiển thị Custom Post Type trên giao diện

Sau khi tạo CPT, bạn cần chỉnh sửa theme để hiển thị bài viết.

🔹 Tạo template riêng cho CPT:

  • Tạo file single-khoa_hoc.php để hiển thị chi tiết bài viết.
  • Tạo file archive-khoa_hoc.php để hiển thị danh sách bài viết.

Ví dụ code cho single-khoa_hoc.php:

<?php get_header(); ?>
    <h1><?php the_title(); ?></h1>
    <div><?php the_content(); ?></div>
<?php get_footer(); ?>

5. Tối ưu CPT cho SEO

Dù CPT giúp quản lý nội dung tốt hơn, nhưng bạn cần tối ưu SEO để tăng khả năng tìm kiếm trên Google.

📌 Dùng Rank Math SEO hoặc Yoast SEO

  • Vào SEO → Titles & Meta → Post Types
  • Bật Custom Post Type cần SEO và cấu hình meta title, description.

📌 Cấu trúc Permalink chuẩn

  • Vào Settings → Permalinks, chọn dạng: /khoa-hoc/%postname%/

📌 Schema Markup (Dữ liệu có cấu trúc)

  • Dùng Rank Math SEO để tạo Schema cho CPT như “Khóa học”, “Sản phẩm”…

6. Tổng kết

✅ Custom Post Type giúp bạn tổ chức nội dung chuyên nghiệp hơn. ✅ Có thể tạo CPT bằng Plugin (CPT UI) hoặc Code thủ công. ✅ Cần tối ưu hiển thị và SEO để tận dụng tối đa CPT.

Bạn đã thử tạo CPT cho website chưa? Hãy để lại bình luận nếu có thắc mắc nhé! 🚀

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Review Your Cart
0
Add Coupon Code
Subtotal

 
Lên đầu trang