Moe Loubani
Software Developer
Development Consultant
Menu select in ACF
Today I’m working on a feature where I’ll need to be able to select a menu on an options page in ACF inside a repeater field. I took a look and didn’t see anyone else offering up how they did this so here it goes: I started with this https://www.advancedcustomfields.com/resources/dynamically-populate-a-select-fields-choices/ and created a select field called ‘menus’.
The code then to get things to work was
[php]
function add_acf_menu_field( $field ) {
// reset choices
$field[‘choices’] = array();
// get a list of the menus and their associated ids
$menus = wp_get_nav_menus();
foreach($menus as $menu) {
$field[‘choices’][$menu->term_id] = $menu->name;
}
// return the field
return $field;
}
add_filter(‘acf/prepare_field/name=menus’, ‘add_acf_menu_field’);
[/php]
Hope this helps anyone coming across the same thing.