Робиш у usermenu інший ID, наприклад menu2
І код виправляєш приблизно так:
// В масиві $menuids зберігаються ID меню, для яких застосовується ця правка
$menuids[] = "menu1";
$menuids[] = "menu2";
// і можна так додавати, скільки влізе
$total_menu_width = ***; /* ширина меню !!!!!! така ж сама як і у верхнього, тому проблеми нема */
$padding_sum = **; /* сума бокових падінгів в тезі <li> !!!!!! така ж сама як і у верхнього, тому проблеми нема */
$border_sum = **; /* сума бокових бордерів в тезі <li> !!!!!! така ж сама як і у верхнього, тому проблеми нема */
foreach ($menuids as $menuid ) {
if ($params->get('tag_id') == $menuid) {
$items = &JSite::getMenu();
$rows = $items->getItems('menutype', $params->get('menutype'));
$k=0;
for ($i=0; $i<count($rows ); $i++) {
if ($rows[$i]->sublevel == 0 ) {
$k++;
}
}
$_css ="n#".$menuid." a {
display: block;
width:".(intval($total_menu_width/$k )-$padding_sum-$border_sum)."px;
} n";//!!!!!!!!! Тут додав перенесення рядку після стилю, щоби не зливалось, щоча, імовірно, це не обов'язоков
if (!isset ($document) ) { // !!!!!!!!! Перевірю, щоби даремно не ганяти. Не критично, але певно так ліпше.
$document = & JFactory::getDocument();
}
$document->addStyleDeclaration($_css);
}
}
Написано тут, не текстувалаось, але ідея має бути зрозуміла.