Wordpress lấy bài slug

Hôm nay chúng ta sẽ đi tìm hiểu một số tính năng biến wordpress trở thành CMS mạnh mẽ nhất thế giới đó là custom post type trong wordpress

Vậy custom post type trong wordpress là gì?

lục mục

  • 1 Custom post type trong wordpress là gì?
  • 2 Cách tạo custom post type trong wordpress
    • 2. 1 Cú pháp
    • 2. 2 Một số lưu ý.
    • 2. 3 Tạo loại bài đăng tùy chỉnh trong wordpress bằng plugin.
  • 3 Hiển thị bài viết của loại bài đăng tùy chỉnh trong wordpress
    • 3. 1 Cú pháp hiển thị sử dụng New wp_query
    • 3. 2 Đặt tên tệp lấy danh sách bài viết, trang chi tiết của loại bài đăng tùy chỉnh.
  • 4 Tổng kết.

Custom post type trong wordpress là gì?

Khi cài đặt wordpress xong chúng ta sẽ thấy mặc định có phần post [Bài viết], phần này sẽ quản lý tất cả các bài viết của website. Đối với các trang web blog hoặc tin tức thì nhưng như vậy là đủ…

Nhưng trường hợp mình muốn làm website bán hàng, mình cần thêm 1 khu vực để đăng sản phẩm. Vì vậy website chỉ có 1 phần bài viết như trên là không đủ chúng ta cần tạo ra một khu vực khác để đăng sản phẩm

Việc đi tạo khu vực để đăng sản phẩm có chức năng tương tự phần bài đăng mà người ta gọi là loại bài đăng tùy chỉnh. Và khu vực mới đó người ta gọi là post type product

Và tất nhiên wordpress đã cung cấp sẵn các hàm, công cụ để chúng ta tạo 1 hoặc nhiều loại bài đăng tùy chỉnh

Tính năng này đã giúp wordpress không dừng lại ở một CMS làm blog mà chúng ta còn có thể làm nhiều loại trang web khác như. Website bán hàng, bất sản, công ty, dịch vụ, quản lý…

Cách tạo custom post type trong wordpress

Để tạo custom post type trong wordpress chúng ta sử dụng đoạn mã sau, chèn đoạn mã này vào file functions. php của chủ đề đang sử dụng nhé

cú pháp

function tao_custom_post_type[]{
    /*
     * Biến $label để chứa các text liên quan đến tên hiển thị của Post Type trong Admin
     */
    $label = array[
        'name' => 'Sản phẩm', //Tên post type dạng số nhiều
        'singular_name' => 'Sản phẩm' //Tên post type dạng số ít
    ];
    /*
     * Biến $args là những tham số quan trọng trong Post Type
     */
    $args = array[
        'labels' => $label, //Gọi các label trong biến $label ở trên
        'description' => 'Post type đăng sản phẩm', //Mô tả của post type
        'supports' => array[
            'title',
            'editor',
            'excerpt',
            'author',
            'thumbnail',
            'comments',
            'trackbacks',
            'revisions',
            'custom-fields'
        ], //Các tính năng được hỗ trợ trong post type
        'taxonomies' => array[ 'category', 'post_tag' ], //Các taxonomy được phép sử dụng để phân loại nội dung
        'hierarchical' => false, //Cho phép phân cấp, nếu là false thì post type này giống như Post, true thì giống như Page
        'public' => true, //Kích hoạt post type
        'show_ui' => true, //Hiển thị khung quản trị như Post/Page
        'show_in_menu' => true, //Hiển thị trên Admin Menu [tay trái]
        'show_in_nav_menus' => true, //Hiển thị trong Appearance -> Menus
        'show_in_admin_bar' => true, //Hiển thị trên thanh Admin bar màu đen.
        'menu_position' => 5, //Thứ tự vị trí hiển thị trong menu [tay trái]
        'menu_icon' => 'dashicons-cart', //Đường dẫn tới icon sẽ hiển thị
        'can_export' => true, //Có thể export nội dung bằng Tools -> Export
        'has_archive' => true, //Cho phép lưu trữ [month, date, year]
        'exclude_from_search' => false, //Loại bỏ khỏi kết quả tìm kiếm
        'publicly_queryable' => true, //Hiển thị các tham số trong query, phải đặt true
        'capability_type' => 'post' //
    ];
    register_post_type['sanpham', $args]; //Tạo post type với slug tên là sanpham và các tham số trong biến $args ở trên
}
add_action['init', 'tao_custom_post_type'];

Một số lưu ý

  • Hàm register_post_type nhận 2 giá trị đó là slug và tham số $args
  • Slug trong hàm register_post_type sẽ sử dụng để lấy dữ liệu của loại bài đăng ra bên ngoài giao diện người dùng
  • Trong tham số $args có thành phần ‘supports’ là đây là những thanh phần sẽ hỗ trợ trong post type sanpham. Nếu không cần sử dụng tất cả, bạn có thể xóa một số thành phần cho loại bài đăng của chúng ta trở nên gọn gàng hơn
  • menu_icon là biểu tượng được hiển thị, khi loại bài đăng mới được đăng ký, các bạn có thể chọn 1 trong các biểu tượng ở đây. Menu biểu tượng danh sách trong quản trị wordpress

Sau khi tạo custom post type thành công các bạn vào admin sẽ thấy menu sản phẩm xuất hiện như hình bên dưới

Tạo custom post type trong wordpress bằng plugin

Phía trên là cách tạo loại bài đăng tùy chỉnh bằng mã. WordPress có rất nhiều plugin giải quyết vấn đề này, ví dụ như

  • Loại bài đăng tùy chỉnh bằng các loại bộ công cụ plugin
  • Giao diện người dùng loại bài đăng tùy chỉnh
  • Trình tạo Loại bài đăng tùy chỉnh và Trường tùy chỉnh – WCK
  • Nhóm – Các loại và trường nội dung tùy chỉnh
  • Trình tạo loại bài đăng tùy chỉnh

Hiển thị bài viết của loại bài đăng tùy chỉnh trong wordpress

Chúng ta sẽ sử dụng vòng get post trong wordpress để lấy bài viết của custom post type. Các bạn sử dụng đoạn mã phía bên dưới nhé

Cú pháp hiển thị sử dụng New wp_query



  // Thông tin cần lấy của 1 bài viết


Như các bạn đã thấy, vậy với get bài viết thông thường get bài viết của loại bài đăng chỉ có một điểm thay đổi đó là. ‘post_type’ => ‘sanpham’ sanpham ở đây là slug của loại bài đăng mà chúng ta khai báo trong phần tạo loại bài đăng tùy chỉnh, còn lại mọi thứ đều tương tự bài đăng

Đặt tên tệp lấy danh sách bài viết, trang chi tiết của loại bài đăng tùy chỉnh

Để lấy danh sách tất cả các bài viết trong loại bài đăng tùy chỉnh vừa tạo chúng ta chạy được dẫn. miền. com/sanpham => sanpham là slug khi đăng ký post type, khi chạy đường dẫn thì sẽ gọi file. kho-sanpham. php

Đối với trang chi tiết của loại bài đăng tùy chỉnh nó sẽ nhận tệp. duy-sanpham. php

Tổng kết

Như vậy hôm nay mình đã hướng dẫn các bạn cách tạo custom post type, đây là một trong những tính năng hay nhất của wordpress đã làm để wordpress trở thành một cms mạnh mẽ và được nhiều người sử dụng

Điều kiến ​​wordpress mạnh bạo là tùy chỉnh được nhiều thứ, giúp wp trở nên đa năng. Các bài viết sau mình sẽ hướng dẫn bạn tùy chỉnh một số thành phần khác của wordpress

Chủ Đề