WP_REST_Menu_Locations_Controller::prepare_links
Prepares links for the request.
Method of the class: WP_REST_Menu_Locations_Controller{}
No Hooks.
Returns
Array. Links for the given menu location.
Usage
// protected - for code of main (parent) or child class $result = $this->prepare_links( $location );
- $location(stdClass) (required)
- Menu location.
Changelog
| Since 5.9.0 | Introduced. |
WP_REST_Menu_Locations_Controller::prepare_links() WP REST Menu Locations Controller::prepare links code WP 6.9
protected function prepare_links( $location ) {
$base = sprintf( '%s/%s', $this->namespace, $this->rest_base );
// Entity meta.
$links = array(
'self' => array(
'href' => rest_url( trailingslashit( $base ) . $location->name ),
),
'collection' => array(
'href' => rest_url( $base ),
),
);
$locations = get_nav_menu_locations();
$menu = isset( $locations[ $location->name ] ) ? $locations[ $location->name ] : 0;
if ( $menu ) {
$path = rest_get_route_for_term( $menu );
if ( $path ) {
$url = rest_url( $path );
$links['https://api.w.org/menu'][] = array(
'href' => $url,
'embeddable' => true,
);
}
}
return $links;
}