Để lấy mảng dữ liệu các mục menu trong WordPress, bạn có thể sử dụng hàm wp_get_nav_menu_items()
. Hàm này sẽ trả về một mảng các đối tượng mục menu dựa trên ID hoặc tên của menu.
Dưới đây là các bước chi tiết để lấy mảng dữ liệu các mục menu trong WordPress:
Trước khi bạn có thể lấy các mục menu, bạn cần biết ID hoặc tên của menu mà bạn muốn lấy. Bạn có thể tìm thấy thông tin này trong phần quản lý Giao diện > Menu của WordPress Dashboard.
wp_get_nav_menu_items()
Sau khi biết ID hoặc tên của menu, bạn có thể sử dụng hàm wp_get_nav_menu_items()
để lấy các mục menu.
Cú pháp:
$menu
Nếu bạn muốn sử dụng tên của menu thay vì ID, bạn có thể làm như sau:
wp_get_nav_menu_items()
Để tạo mảng đa chiều, bạn cần xây dựng cấu trúc mảng đệ quy để bao gồm tất cả các cấp mục menu và các mục con của chúng.
Dưới đây là ví dụ mã PHP để tạo mảng đa chiều:
wp_get_nav_menu_items()
build_menu_tree
: Hàm đệ quy này được định nghĩa bên trong get_menu_array
và nhận đối số là danh sách các mục menu và parent_id
.
menu_item_parent
trùng với parent_id
hiện tại.use (&$build_menu_tree)
để đảm bảo có thể gọi chính nó đệ quy bên trong.Kết quả sẽ là một mảng đa cấp chứa tất cả các mục menu và các mục con theo đúng cấu trúc phân cấp.