Tạo trạng thái bài đăng tùy chỉnh trong WordPress

Trạng thái bài đăng trong WordPress được sử dụng để mô tả trạng thái của bài đăng. Có nhiều trạng thái bài đăng mặc định khác nhau trong WordPress để đại diện cho các trạng thái bài đăng.

Trong hướng dẫn này, chúng ta sẽ xem các trạng thái mặc định đó và cả cách tạo trạng thái bài đăng tùy chỉnh. Trong hướng dẫn trước đây, chúng ta đã biết về cách tạo phân loại tùy chỉnh nếu đó là những gì bạn đang tìm kiếm và đã đến đây.

Có các plugin có sẵn trên thị trường WordPress cung cấp tính năng tạo trạng thái bài đăng tùy chỉnh. Ví dụ, plugin Edit Flow, plugin WordPress Status Planer hỗ trợ cung cấp hỗ trợ tạo trạng thái bài đăng tùy chỉnh.

Tuy nhiên, các plugin như vậy cung cấp nhiều tính năng vượt trội hơn so với yêu cầu đơn giản của chúng tôi. Nếu việc tạo trạng thái bài đăng tùy chỉnh là yêu cầu duy nhất bạn có, thì với mục đích đơn giản đó, việc tải một plugin cung cấp một bộ dịch vụ sẽ là một sự lãng phí tài nguyên.

Vì vậy, hãy làm theo cách tùy chỉnh, tạo trạng thái bài đăng tùy chỉnh thông qua functions.php khá dễ dàng hoặc bạn thậm chí có thể gói nó như một plugin tùy chỉnh nhỏ và sử dụng nó. Tôi đã đăng ký trạng thái bài đăng tùy chỉnh Đang viết trong functions.php của chủ đề của tôi.

Tôi đã sử dụng action hook của WordPress để gọi hàm đăng ký trạng thái bài đăng tùy chỉnh. Tuy nhiên, có một vấn đề với việc tạo trạng thái bài đăng tùy chỉnh thông qua lập trình, đó là không thể nhìn thấy trạng thái bài đăng tùy chỉnh đã đăng ký trong quản trị viên WordPress.

Ảnh chụp màn hình này hiển thị trạng thái bài đăng tùy chỉnh đã đăng ký trong biểu mẫu chỉnh sửa bài đăng wp-admin.

Vì vậy, trong khi chỉnh sửa bài viết chúng ta không thể thiết lập trạng thái bài viết tùy chỉnh cho các bài viết. Tôi đã nhúng một tập lệnh để thêm trạng thái bài đăng tùy chỉnh mới được đăng ký vào menu thả xuống trạng thái biểu mẫu chỉnh sửa bài đăng.

Các trạng thái bài đăng mặc định của WordPress

Phần này hiển thị danh sách các trạng thái bài đăng WordPress có sẵn đi kèm với dữ liệu cốt lõi của nó. Các quy chế này mô tả trạng thái của bài đăng WordPress .
  • Xuất bản - có thể được xem bởi tất cả.
  • Tương lai - Được lên lịch xuất bản vào một ngày trong tương lai.
  • Bản nháp - Một bài đăng chưa hoàn chỉnh và những người có đặc quyền thích hợp có thể xem được.
  • Đang chờ xử lý - Sẵn sàng và chờ người dùng có đặc quyền xuất bản nó.
  • Riêng tư - Chỉ những người dùng cấp Quản trị viên mới có thể xem được.
  • Thùng rác - Các bài đăng đã bị xóa.
  • Bản nháp tự động - Các bản sửa đổi tự động được tạo bởi WordPress trong quá trình chỉnh sửa.
  • Kế thừa - Được sử dụng với các bài đăng phụ thuộc như tệp đính kèm.
Các trạng thái bài đăng này là quá đủ để quản lý quá trình chỉnh sửa bài đăng WordPress và chuyển nó từ trạng thái này sang trạng thái khác. Nếu bạn muốn tạo trạng thái bài đăng của riêng mình với những cái tên có ý nghĩa thì phần sắp tới sẽ giúp bạn đạt được điều đó bằng cách mã hóa tùy chỉnh.

Đăng ký Trạng thái bài đăng tùy chỉnh bằng cách sử dụng functions.php

Tôi đã đăng ký trạng thái bài đăng của riêng mình có tên là 'Đang viết' bằng cách đặt các tùy chọn mặc định. Mã này chỉ định các tùy chọn mặc định để đăng ký trạng thái bài đăng tùy chỉnh.

Hàm này sẽ được gọi bằng cách sử dụng móc tác vụ WordPress. Trong đặc điểm kỹ thuật mặc định, tôi đã thêm chú thích trạng thái bài đăng, bật / tắt các cờ chỉ thị để kiểm soát khả năng hiển thị của các bài đăng dưới trạng thái này.

// Đăng ký Trạng thái Bài đăng Tùy chỉnh
function register_custom_post_status () {
    register_post_status ('Đang viết', mảng (
        'label' => _x ('Đang viết', 'đăng'),
        'public' => true,
        'lude_from_search '=> false,
        'show_in_admin_all_list' => true,
        'show_in_admin_status_list' => true,
        'label_count' => _n_noop ('Đang viết <span class = "count"> (% s) </span>', 'Đang viết <span class = "count"> (% s) </span>'),
    ));
}
add_action ('init', 'register_custom_post_status');

Hiển thị trạng thái bài đăng tùy chỉnh trong biểu mẫu chỉnh sửa quản trị viên WordPress

Như chúng tôi đã đề cập về vấn đề xem trạng thái bài đăng tùy chỉnh đã đăng ký trong wp-admin, tôi đã nhúng một tập lệnh để nối các tùy chọn trạng thái bài đăng mới được tạo trong menu thả xuống trạng thái trong khi chỉnh sửa bài đăng.
// Hiển thị Tùy chọn Trạng thái Bài đăng Tùy chỉnh trong Chỉnh sửa Bài đăng
function display_custom_post_status_option () {
    bài $ toàn cầu;
    $ hoàn = '';
    $ label = '';
    if ($ post-> post_type == 'post') {
        if ($ post-> post_status == 'đang viết') {
            $ select = 'đã chọn';
        }
echo '<script>
$ (tài liệu) .ready (function () {
$ ("select # post_status"). append ("<option value = \" in-writing \ "'. $ select.'> Đang Viết </option>");
$ (". misc-pub-section label"). append ("<span id = \" post-status-display \ "> Đang viết </span>");
});
</script>
';
    }
}
add_action ('admin_footer', 'display_custom_post_status_option');