Cách tạo meta box cho wordpress bằng code

  -  
Một trong những các tính năng khỏe mạnh trong WordPress hoàn toàn có thể giúp những lập trình viên rất có thể thêm nhiều anh tài hay trong các bài viết trong WordPress, đó là kỹ năng Custom Field. Hầu hết hiện thời chúng ta không thực hiện custom field chủ quyền nhưng hiểu custom field là nền tảng quan trọng để sau đây bạn tham khảo thêm Meta Boxes hoặc các plugin phổ cập như Advanced Custom Field.

Bạn đang xem: Cách tạo meta box cho wordpress bằng code

Custom Field là gì?

Giải phù hợp ngắn gọn thì đó là 1 trong dữ liệu bổ sung để thêm vào các bài viết (Post, Page). Nghĩa là chúng ta có thể thêm một cột dữ liệu trong mỗi nội dung bài viết để nó mang trong mình một giá trị tương ứng. Ví như mặc định WordPress chỉ cung ứng nhập tiêu đề bài xích viết, nhưng với Custom Field bạn cũng có thể thêm một trường dữ liệu kiểu như title phụ chẳng hạn.

Hướng dẫn ứng dụng Custom Field

Các chúng ta vào Posts -> địa chỉ New và quan sát xuống dưới sẽ thấy loại khung Custom Field này.

*

Nếu không thấy thì các bạn nhìn tít lên trên, bấm vào chữ Screen Options cùng tick vệt vào Custom Field.

*
Bây giờ chúng ta thử thêm Meta Key (tên địa diện của field) cùng với Value (giá trị của field) như sau:


*

Thêm custom field cùng giá trị của chính nó vào bài


Thêm ngừng nhớ ấn nút Add Custom Field.

Trong đó,

tp_country : Là tên thay mặt của field của bạn.Sweden : quý giá của field.

Ok, vậy là họ đã trả tất câu hỏi khai báo xong xuôi các meta key và quý hiếm của nó.

Dữ liệu custom field lưu vào đâu?

Các tài liệu từ custom field sẽ được lưu lại thành những Post Metadata và phía bên trong bảng wp_postmeta trong database (xem ở các trang cuối).

*
Trong đó, các bạn sẽ thấy tên key (meta_key), ID của bài viết chưa key (post_id) cùng giá trị của nó (meta_value). Và khi bạn dùng field này mang lại nhiều bài viết khác nhau thì nó cũng trở nên có thêm những hàng dữ liệu có meta_key tương đương nhau nhưng sẽ sở hữu post_id khác nhau.

Các hàm hiển thị giá trị custom field

Nếu bạn muốn lấy giá trị của field nào đó trong bài viết ra hiển thị phía bên ngoài (như template single.php chẳng hạn) thì bạn cũng có thể sử dụng các hàm không giống nhau.

get_post_meta()

Hàm này thích hợp sử dụng nếu như khách hàng cần lấy quý hiếm của một field như thế nào đó nhờ vào Post ID đang chứa field.

Cách sử dụng: get_post_meta( $post, $meta_key, $single )

Trong đó,

$post: Là ID của nội dung bài viết cần mang custom field.$meta_key: thương hiệu key của field cần lấy trong bài viết. Mang định sẽ lấy toàn thể field có trong post.$single: Tuỳ chọn hiển thị một giá bán trị hay 1 mảng giá bán trị. Khoác định là false (hiển thị mảng).

Ví dụ bạn muốn hiển thị cực hiếm của field tp_country vào bài lúc này thì đang đặt đoạn code sau vào single.php (có thể đặt ở các template khác bất kỳ, miễn là đem được ID của nội dung bài viết cần mang field).

Xem thêm: Mua Bán Nhà Bán Quận Tân Phú Mới Nhất 2021, Mua Nhà Giá Tốt, Cần Bán Nhà Quận Tân Phú Giá 3

$tp_country = get_post_meta( $post->ID, ‘tp_country’, true ); if( $tp_country ) // đánh giá xem nó bao gồm dữ liệu hay không echo ‘Country: ‘ . $tp_country . ‘’; ?>the_meta()

Nếu các bạn cần đơn giản và dễ dàng là in ra toàn cục meta key với meta value của tất cả các field có trong bài viết và hiển thị dưới dạng list bằng HTML thì sẽ sử dụng hàm này, hàm này không có tham số, sử dụng như là 1 trong template tags.

get_post_custom()

Hàm này yêu thích hợp nếu như khách hàng cần rước ra cục bộ meta key cùng meta value của nội dung bài viết hiện trên (hoặc bài viết bất kỳ phụ thuộc ID), công dụng trả về là dạng mảng lồng nhau.

Cách sử dụng: get_post_custom( $post_id )

Nếu $post_id không được khai báo thì nó vẫn lấy ID của nội dung bài viết hiện tại.

$tp_field = get_post_custom(); echo ‘’; print_r( $tp_field ); echo ‘’; ?>Ngoài các hàm bên trên thì còn có get_post_custom_values() và get_post_custom_keys() nhưng lại mình thấy nó không thông dụng cho lắm vì chỉ việc 3 hàm sinh hoạt trên là đã rất linh hoạt rồi.

Các hàm làm việc với custom field

Ngoài việc hiển thị ra, chúng ta cũng có thể sử dụng một vài hàm đơn nhất để cung cấp thêm, sửa hoặc xoá custom field trong database mà không cần làm việc thông qua vấn đề sửa bài bác viết. Thông thường các hàm này sẽ bổ ích khi các bạn dùng nó trong những action hook của WordPress.

update_post_meta()

Đây là hàm bắt buộc sử dụng nếu như khách hàng cần cập nhật một giá bán trị new vào meta key nào đó, và nếu meta key cần update chưa tồn tại mang lại post thì nó sẽ tự sinh sản thêm.

Cách sử dụng: update_post_meta( $post_id, $meta_key, $meta_value, $prev_value )

Trong đó,

$post_id : ID của bài viết cần cập nhật key.$meta_key : tên key cần update dữ liệu.$meta_value : tài liệu cần cập nhật vào.$prev_value : dữ liệu cũ cần thay đổi thành dữ liệu mới. Không cần phải nhập vày mặc định nếu bạn khai báo $meta_value thì nó đang đổi toàn bộ các quý hiếm cũ thành mới. Sẽ có ích nếu một meta key có nhiều giá trị khác nhau.

Ví dụ:

// Đổi giá trị ‘tp_country’ của post_id là 15 sang quý hiếm ‘Viet Nam’update_post_meta( 15, ‘tp_country’, ‘Viet Nam’ );Ở hàm này, chúng ta cũng có thể xem ví dụ vận dụng làm tính năng lượt xem nội dung bài viết rất hay.

delete_post_meta()

Hàm này đang xoá toàn thể dữ liệu vào một meta key nào kia hoặc xoá quý hiếm meta key. Giải pháp sử dụng tựa như như update_post_meta().

Cách dùng: delete_post_meta( $post_id, $meta_key, $meta_value )

Trong đó,

$post_id : ID của bài viết cần xoá field.$meta_key: thương hiệu meta key bắt buộc xoá.$meta_value: Tên giá trị đề xuất xoá. Không bắt buộc, do mặc định nó đang xoá toàn bộ giá trị. Cơ mà nếu bạn có không ít giá trị vào một field thì dùng cái này nếu bắt buộc giữ lại giá trị theo ý muốn.

Ví dụ sử dụng:

// Xoá toàn cục giá trị trong key ‘tp_country’ của post_id là 15delete_post_meta( 15, ‘tp_country’, ‘Viet Nam’ );

Lời kết

Như vậy là trong nội dung bài viết này các bạn đã có tác dụng quen được với chức năng Custom Field trong WordPress, và đấy là một thiên tài vô thuộc thú vị.

Xem thêm: Cách Cài Wordpress Lên Host Ing Cpanel, Cài Mới Một Website Wordpress Trên Host

Trên thực tế khi làm việc với custom field, ít ai làm thủ công bằng tay như núm này mà họ sẽ kết hợp với meta box nhằm tạo thêm 1 số form nhập liệu bắt mắt dưới size viết bài. Nếu bạn muốn tạo, có thể xem qua khuyên bảo ACF để triển khai nhé.