12/11/2024 Woocommerce 5 phút đọc 3.2K lượt xem

Hướng dẫn tạo Danh mục sử dụng Repeater của ACF qua Option page

Tunlamweb Cập nhật ngày 13/11/2024
Hướng dẫn tạo Danh mục sử dụng Repeater của ACF

Trong trường hợp bạn muốn tạo danh mục động bằng cách sử dụng Repeater Field của Advanced Custom Fields (ACF) thông qua Option Page, dưới đây là hướng dẫn chi tiết.

Hướng dẫn tạo Danh mục sử dụng Repeater của ACF qua Option page
Hướng dẫn tạo Danh mục sử dụng Repeater của ACF qua Option page

Yêu Cầu:

  • Cài đặt và kích hoạt plugin Advanced Custom Fields (ACF Pro). => Plugin này mình sưu tập chứ không phải chính hãng nên bạn hãy cân nhắc trước khi dùng nha.
  • Kiến thức cơ bản về WordPress, PHP, và Shortcode.

Bước 1: Tạo Option Page Với ACF

Tạo Option Page Với ACF
Tạo Option Page Với ACF

Bước 2: Tạo Repeater Field Trong ACF

Vào Custom FieldsAdd New.

Vào Custom Fields → Add New.
Vào Custom Fields → Add New.

Đặt tên cho nhóm field, ví dụ: Danh Mục Tùy Chỉnh.

Đặt tên cho nhóm field, ví dụ: Danh Mục Tùy Chỉnh
Đặt tên cho nhóm field, ví dụ: Danh Mục Tùy Chỉnh

Thêm một Repeater Field với các field con như sau:

Thêm một Repeater Field với các field con như sau
Thêm một Repeater Field với các field con như sau

Tên Field: custom_category

Field Type: Repeater

Trong Repeater Field, thêm các field con:

  • Tên Field: category_name (Text)
  • Tên Field: category_link (URL)
  • Tên Field: category_image (Image)

Location: Chọn Options Page là “Danh Mục”

Location: Chọn Options Page là "Danh Mục"
Location: Chọn Options Page là “Danh Mục”

Nhấn Publish để lưu.

Mình đã Export phần JSON ra để bạn không cần làm theo các bước trên chỉ cần add file này vào Tools của ACF là được

Add JSON cho 2 bước trên
Add JSON cho 2 bước trên

Link JSON

Bước 3: Thêm danh mục trong Option Page

Thêm danh mục trong Option Page
Thêm danh mục trong Option Page

Bước 4: Hiển Thị Danh Mục bằng Shortcode

Để hiển thị danh mục đã tạo trên trang, bạn có thể sử dụng đoạn mã sau trong file functions.php

Gắn shortcode vào bất cứ vị trí nào bạn muốn:

Gắn shortcode
Gắn shortcode

Giải Thích Mã:

  • have_rows('custom_category', 'option'): Kiểm tra nếu có dữ liệu trong Repeater Field tại Option Page.
  • get_sub_field('category_name'): Lấy giá trị của từng field con trong Repeater.
  • esc_url(), esc_html(), esc_attr(): Các hàm bảo mật để đảm bảo giá trị được hiển thị an toàn.
  • <img>: Hiển thị hình ảnh với URL và ALT text từ ACF.

Kết Luận

Với cách này, bạn có thể dễ dàng tạo danh mục tùy chỉnh qua ACF Repeater trên Option Page và hiển thị ở bất kỳ vị trí nào trên trang. Phương pháp này giúp bạn linh hoạt hơn trong việc quản lý nội dung mà không cần phải chỉnh sửa mã nguồn nhiều.

ACF Repeater trên Option Page
ACF Repeater trên Option Page

Nếu bạn gặp vấn đề hoặc cần thêm hỗ trợ, hãy cho mình biết nhé!

Thích 11
Bình thường 0
5 4 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
1 Bình luận
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất
Tuấn Thanh
1 năm trước

Bài viết này khá chi tiết cảm ơn bạn nha