// Filter wp_nav_menu() to add additional links and other output
add_filter('wp_nav_menu_items', 'new_nav_menu_items', 10, 2);
function new_nav_menu_items($items, $args) {
if (function_exists('icl_get_languages')) {
$languages = icl_get_languages('skip_missing=0');
if( ($args->theme_location == 'primary-menu') || ($args->theme_location == 'main-bottom-menu-1-fr') ){
if(!empty($languages)){
foreach($languages as $l){
if(!$l['active']){
// flag with translated name
$items = $items . '<li class="menu-item"><a href="' . $l['url'] . '" class="menu-item-link">' . $l['language_code'] . '</a></li>';
}
}
}
}
}
return $items;
}
OR
// DEFINE POSITION OF THE ADDING MENU ITEMS
// Filter wp_nav_menu() to add additional links and other output
add_filter('wp_nav_menu_items', 'new_nav_menu_items', 10, 2);
function new_nav_menu_items($items, $args) {
if (function_exists('icl_get_languages')) {
$languages = icl_get_languages('skip_missing=0');
if( ($args->theme_location == 'menu-extra-top')){
if(!empty($languages)){
foreach($languages as $l){
if(!$l['active']){
// flag with translated name
//$items = $items . '<li class="menu-item"><a href="' . $l['url'] . '" class="menu-item-link">' . $l['native_name'] . '</a></li>';
$items_array = array();
while ( false !== ( $item_pos = strpos ( $items, '<li', 3 ) ) ){
$items_array[] = substr($items, 0, $item_pos);
$items = substr($items, $item_pos);
}
$items_array[] = $items;
array_splice($items_array, 4, 0, '<li class="menu-item"><a href="' . $l['url'] . '" class="menu-item-link">' . $l['native_name'] . '</a></li>');
// insert custom item after 2nd one
$items = implode('', $items_array);
}
}
}
}
}
return $items;
}