Truy cập giao diện sau đó chọn sửa tệp giao diện

Hướng dẫn tạo Custom Post Type trong WordPress

Khi phát triển website WordPress, đôi khi bạn cần quản lý các loại nội dung đặc thù không phù hợp với hai loại mặc định là Post (Bài viết) và Page (Trang). Lúc này, Custom Post Type (CPT) sẽ là giải pháp tuyệt vời, giúp bạn tổ chức và quản lý nội dung một cách chuyên nghiệp hơn.

Thêm mã vào tệp functions.php

Đầu tiên, truy cập Giao diện > Sửa tệp tin giao diện và mở tệp functions.php. Sau đó, dán đoạn mã sau để đăng ký một Custom Post Type có tên là “Sự kiện”:

Truy cập giao diện sau đó chọn sửa tệp giao diện
Truy cập giao diện sau đó chọn sửa tệp giao diện
Truy cập file function.php
Truy cập file function.php
function create_event_post_type() {
    $labels = array(
        'name' => _x('Sự kiện', 'Post type general name', 'textdomain'),
        'singular_name' => _x('Sự kiện', 'Post type singular name', 'textdomain'),
        'menu_name' => _x('Sự kiện', 'Admin Menu text', 'textdomain'),
        'name_admin_bar' => _x('Sự kiện', 'Add New on Toolbar', 'textdomain'),
        'add_new' => __('Thêm Sự kiện', 'textdomain'),
        'add_new_item' => __('Thêm Sự kiện mới', 'textdomain'),
        'new_item' => __('Sự kiện mới', 'textdomain'),
        'edit_item' => __('Chỉnh sửa Sự kiện', 'textdomain'),
        'view_item' => __('Xem Sự kiện', 'textdomain'),
        'all_items' => __('Tất cả Sự kiện', 'textdomain'),
        'search_items' => __('Tìm kiếm Sự kiện', 'textdomain'),
        'not_found' => __('Không tìm thấy Sự kiện nào.', 'textdomain'),
        'not_found_in_trash' => __('Không có Sự kiện nào trong thùng rác.', 'textdomain'),
    );
    $args = array(
        'labels' => $labels,
        'public' => true,
        'publicly_queryable' => true,
        'show_ui' => true,
        'show_in_menu' => true,
        'query_var' => true,
        'rewrite' => array('slug' => 'su-kien'),
        'capability_type' => 'post',
        'has_archive' => true,
        'hierarchical' => false,
        'menu_position' => 20,
        'menu_icon' => 'dashicons-calendar-alt', // Icon sự kiện
        'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'comments'),
        'show_in_rest' => true, // Kích hoạt Gutenberg
    );
    register_post_type('su-kien', $args);
}
add_action('init', 'create_event_post_type');

Thêm danh mục cho Custom Post Type

Để thêm danh mục (taxonomy) cho CPT “Sự kiện”, thêm đoạn mã sau vào ngay dưới đoạn mã trên:

function create_event_taxonomy() {
    register_taxonomy(
        'event_category',
        'su-kien',
        array(
            'hierarchical' => true,
            'labels' => array(
                'name' => _x('Danh mục Sự kiện', 'taxonomy general name', 'textdomain'),
                'singular_name' => _x('Danh mục Sự kiện', 'taxonomy singular name', 'textdomain'),
                'search_items' => __('Tìm kiếm danh mục', 'textdomain'),
                'all_items' => __('Tất cả danh mục', 'textdomain'),
                'parent_item' => __('Danh mục cha', 'textdomain'),
                'parent_item_colon' => __('Danh mục cha:', 'textdomain'),
                'edit_item' => __('Chỉnh sửa danh mục', 'textdomain'),
                'update_item' => __('Cập nhật danh mục', 'textdomain'),
                'add_new_item' => __('Thêm danh mục mới', 'textdomain'),
                'new_item_name' => __('Tên danh mục mới', 'textdomain'),
                'menu_name' => __('Danh mục Sự kiện', 'textdomain'),
            ),
            'show_ui' => true,
            'show_admin_column' => true,
            'query_var' => true,
            'rewrite' => array('slug' => 'danh-muc-su-kien'),
        )
    );
}
add_action('init', 'create_event_taxonomy');
Nhấn lưu thay đổi
Nhấn lưu thay đổi

Cập nhật Permalink

Sau khi thêm mã, truy cập Cài đặt > Đường dẫn tĩnh và nhấn nút Lưu thay đổi để cập nhật liên kết (Permalink)

Truy cập cài đặt, chọn đường dẫn cố định
Truy cập cài đặt, chọn đường dẫn cố định
Chọn lưu thay đổi
Chọn lưu thay đổi

Cách sử dụng Custom Post Type “Sự kiện”

Tạo danh mục sự kiện: Truy cập Sự kiện > Danh mục sự kiện, sau đó tạo một danh mục phù hợp, ví dụ: Ra mắt sản phẩm.

Truy cập CTP Sự kiện, chọn thêm danh mục sự kiện
Truy cập CTP Sự kiện, chọn thêm danh mục sự kiện
Thêm danh mục sự kiện
Thêm danh mục sự kiện

Tạo sự kiện mới: Truy cập Sự kiện > Thêm mới, nhập tiêu đề, nội dung, thêm hình ảnh, và chọn danh mục tương ứng.

Tạo sự kiện
Tạo sự kiện
Thêm mới, nhập tiêu đề, nội dung, thêm hình ảnh, và chọn danh mục tương ứng.
Thêm mới, nhập tiêu đề, nội dung, thêm hình ảnh, và chọn danh mục tương ứng.

Xem kết quả: Sau khi lưu sự kiện, truy cập website để kiểm tra CPT “Sự kiện” vừa tạo.

CPT Sự kiện sau khi hoàn thành
CPT Sự kiện sau khi hoàn thành

Chúc bạn thành công!

Leave a Reply

Your email address will not be published. Required fields are marked *