You can do this by overriding theme_menu_local_tasks() in your theme:
function yourTheme_menu_local_tasks() { // Prepare empty dropdown to allow for unconditional addition to output below $dropdown = ''; // Check if the dropdown should be added to this menu $inject_dropdown = TRUE; // TODO: Add checking logic according to your needs, eg by inspecting the path via arg() // Injection wanted? if ($inject_dropdown) { // Yes, build the dropdown using Forms API $select = array( '#type' => 'select', '#title' => t('Number of results:'), '#options' => array('10', '20', '50', '100'), ); // Wrap rendered select in <li> tag to fit within the rest of the tabs list $dropdown = '<li>' . drupal_render($select) . '</li>'; } // NOTE: The following is just a copy of the default theme_menu_local_tasks(), // with the addition of the (possibly empty) $dropdown variable output $output = ''; if ($primary = menu_primary_local_tasks()) { $output .= "<ul class=\"tabs primary\">\n". $primary . $dropdown . "</ul>\n"; } if ($secondary = menu_secondary_local_tasks()) { $output .= "<ul class=\"tabs secondary\">\n". $secondary ."</ul>\n"; } return $output; }
(NOTE: unverified code - potential typos)
source share