Custom Field là gì?
Giải thích ngắn gọn thì đó là một dữ liệu bổ sung để thêm vào mỗi bài viết hay page. Mình lấy ví dụ thực tế như sau, nếu bạn muốn chèn một nội dung sau đây vào cuối bài viết:- Thời gian: 24 giờ
- Địa điểm: Vũng Tàu
- Lời nhắn: Hãy đến đây!
Hướng dẫn ứng dụng Custom Field
Gợi ý - Miễn phí theme tại ThemeFuse
Bạn muốn nhận bất kỳ theme nào tại ThemeFuse? Hoàn toàn được, hãy tham gia dịch vụ cài đặt blog Wordpress miễn phí của mình ngay hôm nay để được sử dụng theme miễn phí tại ThemeFuse và nhiều nhà cung cấp khác.
Để tôi thử!Bây giờ các bạn thử thêm 3 KEY với 3 VALUE như sau:
Giải thích:
- Key: Một khóa để phân biệt của từng field. Chút nữa bạn sẽ được hiểu sâu về nó.
- Value: Là giá trị của key, giá trị này chúng ta có thể thay đổi hoặc đặt một quy ước chung. Giải thích mơ hồ lắm, chút nữa sẽ có ví dụ cụ thể.
Tốt nhất là nên chèn dưới đoạn loop
Đây là mẫu của mình
Sau đó bạn vào xem bài viết chứa custom field thì sẽ thấy nó như thế này
Nhìn rất chuối đúng không nào, nó in luôn cả cái key không có dấu lên. Mình dùng Key không dấu bởi vì trong môi trường code PHP, một giá trị của chuỗi (string) không nên chứa khoảng trắng, rất dễ gây hiểu lầm . Cái này nếu bạn nào có học lập trình PHP thì sẽ biết, ít ai lại đi gán một từ có dấu cho giá trị bao giờ.
Nhưng vấn đề sẽ được đặt ra, ta xác định Key là không có dấu thì làm sao ta có thể thay thế Key đó thành một chữ có dấu khi được in ra ngoài bài viết? Ok, vậy bây giờ chúng ta sẽ không dùng the_meta() nữa mà sẽ dùng một loop khác được gọi là get_post_meta()
Hàm này có cấu trúc đầy đủ mặc định là như sau
get_post_meta($post_id, $key, $single);
Giải thích:
$post_id: Chuỗi xác định ID của bài viết được kích hoạt custom field. Thông thường chúng ta hay đặt giá trị cho chuỗi này là bài viết hiện tại, vậy chúng ta sẽ gán giá trị cho chuỗi này là $post_id->ID.
$key: Tên của Key muốn gọi ra.
$single: Đây là một giá trị kiểu boolean. Chuỗi này chỉ có thể thiết lập một trong hai giá trị đó là true hoặc false. Nếu giá trị là true thì nó sẽ hiển một giá trị duy nhất của Key mà ta đã gán cho nó. Còn đặt là False thì nó sẽ xuất ra giá trị kiểu Array.
Được rồi, bây giờ bạn vào lại file single.php xóa đoạn
đi và thay thế bằng đoạn sauID, 'thoi-gian', true);
if ($thoigian): ?>
Thời gian
Tương tự với các Key còn lại, các bạn nên viết theo giống mẫu trên. Nhớ hàm if nữa nhé vì nếu không có hàm if ở trên thì ở các bài viết khác sẽ hiện nội dung HTML có trong code mặc dù không chứa custom field nào.
Như vậy là về custom field thì đến đây đã hết rồi đấy, đó là những vấn đề cơ bản mà bạn cần nên biết. Nếu tư duy lập trình của bạn tốt thì có thể ứng dụng được nó để làm rất nhiều việc đấy.
Các bài viết nên tham khảo:
Một số plugin nên dùng kèm khi sử dụng Custom Field
- Avanced Custom Field (nên dùng)
- Get Custom Field Values
- Custom Field Shortcode
- TitanCreator – Custom Posts and Meta Box Creator