@@ 178-204 (lines=27) @@ | ||
175 | * @since 1.0.0 |
|
176 | * @return array All registered menus locations |
|
177 | */ |
|
178 | public static function get_menu_locations() { |
|
179 | ||
180 | $locations = get_nav_menu_locations(); |
|
181 | $registered_menus = get_registered_nav_menus(); |
|
182 | $json_url = get_json_url() . '/menu-locations/'; |
|
183 | $json_menus = array(); |
|
184 | ||
185 | if ( $locations && $registered_menus ) : |
|
186 | ||
187 | foreach ( $registered_menus as $slug => $label ) : |
|
188 | ||
189 | // Sanity check |
|
190 | if ( ! isset( $locations[ $slug ] ) ) { |
|
191 | continue; |
|
192 | } |
|
193 | ||
194 | $json_menus[ $slug ]['ID'] = $locations[ $slug ]; |
|
195 | $json_menus[ $slug ]['label'] = $label; |
|
196 | $json_menus[ $slug ]['meta']['links']['collection'] = $json_url; |
|
197 | $json_menus[ $slug ]['meta']['links']['self'] = $json_url . $slug; |
|
198 | ||
199 | endforeach; |
|
200 | ||
201 | endif; |
|
202 | ||
203 | return $json_menus; |
|
204 | } |
|
205 | ||
206 | ||
207 | /** |
@@ 279-305 (lines=27) @@ | ||
276 | * @param $request |
|
277 | * @return array All registered menus locations |
|
278 | */ |
|
279 | public static function get_menu_locations( $request ) { |
|
280 | ||
281 | $locations = get_nav_menu_locations(); |
|
282 | $registered_menus = get_registered_nav_menus(); |
|
283 | $rest_url = get_rest_url() . self::get_api_namespace() . '/menu-locations/'; |
|
284 | $rest_menus = array(); |
|
285 | ||
286 | if ( $locations && $registered_menus ) : |
|
287 | ||
288 | foreach ( $registered_menus as $slug => $label ) : |
|
289 | ||
290 | // Sanity check |
|
291 | if ( ! isset( $locations[ $slug ] ) ) { |
|
292 | continue; |
|
293 | } |
|
294 | ||
295 | $rest_menus[ $slug ]['ID'] = $locations[ $slug ]; |
|
296 | $rest_menus[ $slug ]['label'] = $label; |
|
297 | $rest_menus[ $slug ]['meta']['links']['collection'] = $rest_url; |
|
298 | $rest_menus[ $slug ]['meta']['links']['self'] = $rest_url . $slug; |
|
299 | ||
300 | endforeach; |
|
301 | ||
302 | endif; |
|
303 | ||
304 | return $rest_menus; |
|
305 | } |
|
306 | ||
307 | ||
308 | /** |