Thêm admin column quản lý trang WordPress

13 giờ ago, WordPress Plugin, Views
Thêm admin column quản lý trang WordPress

Giới Thiệu Về Admin Column Trong WordPress

Admin column (cột quản trị) trong WordPress là các cột hiển thị trong danh sách bài viết, trang, và các custom post type khác trong khu vực quản trị (admin area). Các cột này cung cấp thông tin tóm tắt về từng mục, giúp bạn quản lý và lọc nội dung một cách hiệu quả hơn. Thay vì phải mở từng trang hoặc bài viết để xem thông tin, bạn có thể thấy các thông tin quan trọng ngay trong danh sách.

Việc thêm admin column cho phép bạn tùy chỉnh hiển thị thông tin quan trọng cho quy trình làm việc của mình. Ví dụ, bạn có thể thêm cột hiển thị tác giả, ngày đăng, số lượng bình luận, hoặc các thông tin tùy chỉnh khác như giá sản phẩm, trạng thái đơn hàng, hoặc bất kỳ thông tin nào liên quan đến custom post type của bạn.

Tại Sao Nên Thêm Admin Column?

Việc thêm admin column mang lại nhiều lợi ích thiết thực cho việc quản lý trang web WordPress của bạn:

  • Tăng tốc độ quản lý: Dễ dàng xem nhanh các thông tin quan trọng mà không cần mở từng trang.
  • Nâng cao hiệu quả làm việc: Dễ dàng lọc và sắp xếp nội dung theo các tiêu chí quan trọng.
  • Tùy chỉnh hiển thị: Hiển thị các thông tin phù hợp với quy trình làm việc cụ thể của bạn.

Ví dụ, nếu bạn quản lý một trang web bán hàng, bạn có thể thêm cột hiển thị giá sản phẩm, số lượng hàng tồn kho, hoặc trạng thái sản phẩm (đang bán, hết hàng, giảm giá). Nếu bạn quản lý một trang web tin tức, bạn có thể thêm cột hiển thị số lượt xem, số lượng bình luận, hoặc trạng thái duyệt bài.

Các Phương Pháp Thêm Admin Column

Có hai phương pháp chính để thêm admin column vào WordPress:

  • Sử dụng plugin: Đây là phương pháp đơn giản và nhanh chóng, phù hợp cho người dùng không có kiến thức về code.
  • Sử dụng code (PHP): Phương pháp này cho phép tùy chỉnh sâu hơn, nhưng đòi hỏi kiến thức về PHP và WordPress development.

Chúng ta sẽ xem xét cả hai phương pháp này.

Thêm Admin Column Bằng Plugin

Có nhiều plugin miễn phí và trả phí hỗ trợ thêm admin column. Một số plugin phổ biến bao gồm:

  • Admin Columns: Một plugin mạnh mẽ và dễ sử dụng, cho phép bạn tùy chỉnh admin column cho bài viết, trang, và custom post type.
  • Custom Field Suite: Một plugin cho phép bạn tạo custom field và hiển thị chúng trong admin column.
  • WooCommerce Admin Columns: Một plugin dành riêng cho WooCommerce, cho phép bạn tùy chỉnh admin column cho sản phẩm, đơn hàng, và các đối tượng WooCommerce khác.

Hướng dẫn sử dụng plugin Admin Columns:

  1. Cài đặt và kích hoạt plugin Admin Columns.
  2. Truy cập Admin Columns > Settings.
  3. Chọn đối tượng bạn muốn tùy chỉnh (ví dụ: Bài viết, Trang, Sản phẩm).
  4. Sử dụng giao diện kéo thả để thêm, xóa, và sắp xếp các cột.
  5. Lưu các thay đổi.

Plugin Admin Columns cung cấp nhiều tùy chọn cấu hình, cho phép bạn tùy chỉnh hiển thị, định dạng dữ liệu, và thêm các bộ lọc.

Thêm Admin Column Bằng Code (PHP)

Việc thêm admin column bằng code đòi hỏi kiến thức về PHP và WordPress hooks. Bạn cần thêm code vào file functions.php của theme hoặc tạo một plugin tùy chỉnh.

Ví dụ: Thêm cột “Tác Giả” cho Trang

Đầu tiên, chúng ta cần sử dụng hook manage_pages_columns để thêm cột mới vào danh sách trang:

function add_author_column_to_pages( $columns ) {
    $columns['author'] = 'Tác Giả';
    return $columns;
}
add_filter( 'manage_pages_columns', 'add_author_column_to_pages' );

Tiếp theo, chúng ta cần sử dụng hook manage_pages_custom_column để hiển thị dữ liệu trong cột mới:

function display_author_column_content( $column_name, $post_id ) {
    if ( $column_name == 'author' ) {
        $author_id = get_post_field( 'post_author', $post_id );
        $author_name = get_the_author_meta( 'display_name', $author_id );
        echo '' . $author_name . '';
    }
}
add_action( 'manage_pages_custom_column', 'display_author_column_content', 10, 2 );

Giải thích code:

  • add_author_column_to_pages: Hàm này thêm cột “Tác Giả” vào mảng các cột hiển thị.
  • manage_pages_columns: Hook này được sử dụng để lọc mảng các cột hiển thị trong danh sách trang.
  • display_author_column_content: Hàm này hiển thị nội dung trong cột “Tác Giả”.
  • manage_pages_custom_column: Hook này được sử dụng để hiển thị nội dung cho từng cột tùy chỉnh.

Ví dụ: Thêm cột “Ngày Cập Nhật” cho Bài Viết

function add_modified_date_column_to_posts( $columns ) {
    $columns['modified_date'] = 'Ngày Cập Nhật';
    return $columns;
}
add_filter( 'manage_posts_columns', 'add_modified_date_column_to_posts' );

function display_modified_date_column_content( $column_name, $post_id ) {
    if ( $column_name == 'modified_date' ) {
        $modified_date = get_the_modified_date( 'd/m/Y', $post_id );
        echo $modified_date;
    }
}
add_action( 'manage_posts_custom_column', 'display_modified_date_column_content', 10, 2 );

Ví dụ: Thêm cột tùy chỉnh cho Custom Post Type (ví dụ: “Sản Phẩm”)

function add_price_column_to_products( $columns ) {
    $columns['price'] = 'Giá Sản Phẩm';
    return $columns;
}
add_filter( 'manage_product_posts_columns', 'add_price_column_to_products' );

function display_price_column_content( $column_name, $post_id ) {
    if ( $column_name == 'price' ) {
        $price = get_post_meta( $post_id, 'price', true );
        echo number_format( $price, 0, ',', '.' ) . ' VNĐ';
    }
}
add_action( 'manage_product_posts_custom_column', 'display_price_column_content', 10, 2 );

Lưu ý: Thay thế ‘price’ bằng key của custom field chứa giá sản phẩm của bạn.

Sắp Xếp Các Cột Admin

Ngoài việc thêm cột, bạn cũng có thể sắp xếp các cột để dễ dàng lọc và tìm kiếm nội dung. Để thực hiện việc này, bạn cần sử dụng hook manage_edit-{post_type}_sortable_columns.

Ví dụ: Sắp xếp cột “Tác Giả” theo tên tác giả

function make_author_column_sortable( $columns ) {
    $columns['author'] = 'author';
    return $columns;
}
add_filter( 'manage_edit-page_sortable_columns', 'make_author_column_sortable' );

Để sắp xếp cột theo giá trị của custom field, bạn cần viết thêm code để xử lý việc sắp xếp dữ liệu.

Kết Luận

Việc thêm admin column là một cách hiệu quả để quản lý trang web WordPress của bạn. Cho dù bạn chọn sử dụng plugin hay code, việc tùy chỉnh admin column sẽ giúp bạn tiết kiệm thời gian và nâng cao hiệu quả làm việc.

Hãy thử áp dụng các phương pháp trên và tùy chỉnh admin column để phù hợp với nhu cầu quản lý trang web của bạn.