Ben menü tek düzeyli liste olduğunda çalışıyor bir preprocess işlevi var. Ancak ben bu suckerfish menüler / w çalışmak istiyorum. Ben bunu stil böylece üst düzey menü öğesi için bir sınıf eklemek istiyorum. Bu benim tek seviye menüsü için kullanılan kod:
function cti_flex_preprocess_page(&$vars, $hook) {
// Make a shortcut for the primary links variables
$primary_links = $vars['primary_links'];
// Loop thru the menu, adding a new class for CSS selectors
$i = 1;
foreach ($primary_links as $link => $attributes){
// Append the new class to existing classes for each menu item
$class = $attributes['attributes']['class'] . " item-$i";
// Add revised classes back to the primary links temp variable
$primary_links[$link]['attributes']['class'] = $class;
$link['title'] = '<span class="hide">' . check_plain($link['title']) . '</span>';
$i++;
} // end the foreach loop
// reset the variable to contain the new markup
$vars['primary_links'] = $primary_links;
}
Örneğin ben, boşuna menu_tree () fonksiyonunu kullanmak çalışıyorum:
function cti_flex_preprocess_page(&$vars, $hook) {
// Make a shortcut for the primary links variables
$primary_links = $vars['primary_links'];
// Loop thru the menu, adding a new class for CSS selectors
$i = 1;
foreach ($primary_links as $link => $attributes){
// Append the new class to existing classes for each menu item
$class = $attributes['attributes']['class'] . " item-$i";
// Add revised classes back to the primary links temp variable
$primary_links[$link]['attributes']['class'] = $class;
$link['title'] = '<span class="hide">' . check_plain($link['title']) . '</span>';
$i++;
} // end the foreach loop
// reset the variable to contain the new markup
$vars['primary_links_tree'] = menu_tree(variable_get('menu_primary_links_source', '$primary_links'));
}
Herhangi bir fikir büyük mutluluk duyacağız.