Directory / plugin
Laboratory WordPress Menus Rest API
v1.0.0 · by cardofearing
Laboratory WordPress Menus Rest API Generate API Endpoints for WordPress menus.
About this plugin
Laboratory WordPress Menus Rest API
Generate API Endpoints for WordPress menus.
Available Endpoints
Get Menu Items Endpoint: /wp-json/lab-menus/v1/menu/{menu(string | int)}
Params:
-
menu – Either the slug (string) or ID (int) of a menu e.g.
http://example.com/wp-json/lab-menus/v1/menu/main-menuhttp://example.com/wp-json/lab-menus/v1/menu/2
Return: Array of menu item objects, otherwise false.
[{
"ID": 48,
"menu_item_parent": "0",
"object_id": "46",
"object": "page",
"type": "post_type",
"type_label": "Page",
"url": "http:\/\/localhost:8888\/example\/test\/",
"title": "Academics",
"target": "",
"attr_title": "",
"description": "",
"classes": [""],
// Rest of the details...,
}]
Get Available Menus Endpoint: /wp-json/lab-menus/v1/menu-options
e.g. http://example.com/wp-json/lab-menus/v1/menu-options
Return: Array of available menus objects.
[{
"term_id": 3,
"name": "Example Navigation",
"slug": "example-navigation",
"term_group": 0,
"term_taxonomy_id": 3,
"taxonomy": "nav_menu",
"description": "",
"parent": 0,
"count": 6,
"filter": "raw"
}]
Get Registered Menu Locations Endpoint: /wp-json/lab-menus/v1/menu-locations
e.g. http://example.com/wp-json/lab-menus/v1/menu-locations
Return: (Associative Array) Array of menus registered by the theme.
[ "example-nav": 3, "main-navigation": 2, "footer-nav": 4 ]