1. Advanced Custom Fields (ACF) là gì?
Advanced Custom Fields (ACF) là một trong những plugin phổ biến nhất dành cho WordPress, giúp mở rộng khả năng quản lý dữ liệu tuỳ chỉnh trên website. Plugin này cho phép người dùng dễ dàng thêm, chỉnh sửa và hiển thị các trường dữ liệu bổ sung trong bài viết, trang, sản phẩm hoặc bất kỳ loại nội dung nào khác trong WordPress.
ACF đặc biệt hữu ích đối với các lập trình viên, nhà thiết kế web và chủ website muốn tùy chỉnh giao diện quản trị mà không cần can thiệp quá nhiều vào mã nguồn.
2. Tại sao nên sử dụng ACF?
Dưới đây là một số lý do khiến ACF trở thành công cụ không thể thiếu:
- Dễ sử dụng: Giao diện trực quan, dễ thiết lập mà không yêu cầu nhiều kiến thức lập trình.
- Tích hợp mạnh mẽ: ACF có thể hoạt động với hầu hết các theme và plugin WordPress.
- Tùy chỉnh giao diện quản trị: Giúp thêm các trường nhập dữ liệu tùy chỉnh vào trang quản trị.
- Hỗ trợ nhiều loại dữ liệu: Văn bản, số, hình ảnh, video, trường lặp, Google Maps, file, v.v.
- Tăng tốc phát triển: Giảm đáng kể thời gian viết code khi cần thêm các trường dữ liệu tùy chỉnh.
3. Cài đặt và kích hoạt ACF
Bước 1: Cài đặt plugin ACF
- Vào Bảng điều khiển WordPress → Plugins → Thêm mới.
- Tìm kiếm “Advanced Custom Fields”.
- Cài đặt và kích hoạt plugin.
Bước 2: Cấu hình cơ bản
- Sau khi kích hoạt, bạn sẽ thấy mục “Custom Fields” trên menu WordPress.
- Nhấn vào “Add New” để tạo nhóm trường mới.
4. Cách sử dụng Advanced Custom Fields
4.1. Tạo nhóm trường dữ liệu (Field Group)
- Vào Custom Fields → Add New.
- Đặt tên nhóm trường (ví dụ: “Thông tin sản phẩm”).
- Nhấn Add Field để tạo các trường tùy chỉnh.
4.2. Các loại trường phổ biến trong ACF
ACF hỗ trợ nhiều loại trường dữ liệu, bao gồm:
Loại Trường | Chức Năng |
---|---|
Text | Nhập nội dung dạng văn bản |
Text Area | Nhập nội dung dài hơn (mô tả) |
Number | Nhập số |
Image | Chọn ảnh |
File | Tải lên file |
Select | Danh sách lựa chọn |
Checkbox | Tích chọn nhiều tùy chọn |
Radio Button | Chọn một tùy chọn duy nhất |
True/False | Công tắc bật/tắt |
Repeater | Trường lặp (dành cho danh sách dữ liệu động) |
4.3. Gán nhóm trường vào bài viết, trang hoặc CPT
Sau khi tạo xong nhóm trường, bạn có thể gán chúng vào bài viết, trang hoặc Custom Post Type (CPT) bằng cách:
- Chọn điều kiện hiển thị (Location Rules), ví dụ: “Post Type is equal to Product”.
- Lưu lại và kiểm tra giao diện nhập dữ liệu trong trang chỉnh sửa bài viết.
5. Hiển thị dữ liệu trên giao diện website
Sau khi thêm dữ liệu vào bài viết, bạn cần hiển thị chúng trên theme bằng cách sử dụng hàm ACF.
Ví dụ, để hiển thị một trường text có tên là “product_price”:
<?php echo get_field('product_price'); ?>
Nếu là trường hình ảnh:
<?php $image = get_field('product_image'); ?>
<img src="<?php echo $image['url']; ?>" alt="<?php echo $image['alt']; ?>">
Nếu là trường lặp (Repeater):
<?php if( have_rows('product_features') ): ?>
<ul>
<?php while( have_rows('product_features') ): the_row(); ?>
<li><?php the_sub_field('feature'); ?></li>
<?php endwhile; ?>
</ul>
<?php endif; ?>
6. Các tính năng nâng cao của ACF Pro
Phiên bản ACF Pro (trả phí) bổ sung nhiều tính năng mạnh mẽ như:
- Repeater Field: Cho phép tạo danh sách dữ liệu lặp lại.
- Flexible Content: Tạo nội dung linh hoạt như Page Builder.
- Gallery Field: Tạo thư viện ảnh.
- Options Page: Tạo trang tùy chỉnh cho cài đặt website.
- Clone Field: Sao chép trường dữ liệu mà không cần nhập lại.
7. ACF và các plugin hỗ trợ
ACF có thể kết hợp với nhiều plugin khác để mở rộng chức năng:
- Elementor Pro: Tích hợp dữ liệu ACF vào các widget của Elementor.
- WooCommerce: Thêm dữ liệu tùy chỉnh vào sản phẩm.
- WP All Import: Nhập dữ liệu ACF từ file CSV/XML.
- ACF to REST API: Truy xuất dữ liệu ACF qua API REST của WordPress.
8. Kết luận
Advanced Custom Fields (ACF) là một plugin mạnh mẽ giúp mở rộng khả năng tùy chỉnh dữ liệu trong WordPress. Dù bạn là lập trình viên hay người dùng không chuyên, ACF đều giúp quản lý nội dung dễ dàng hơn mà không cần viết quá nhiều code.
Nếu bạn muốn chuyên nghiệp hóa website WordPress của mình, hãy thử ngay ACF và khám phá các tính năng tuyệt vời mà nó mang lại!