Hey.. that looks to me a perfectly valid way. You could try and use the 'themer' module from the devel family to check how else that can be done. A preprocess function in the template file is not a bad way either. I dont see you triming and adding an ellipsis in your code.

On Thu, May 27, 2010 at 10:24 AM, Mukesh Agarwal <mike4u4ever2001@gmail.com> wrote:
Ok, so a bad way is to write the following code in your template.php

function THEMENAME_preprocess_page(&$vars) {
if (arg(0) ==  'node' && is_numeric(arg(1))) {
$node = $vars['node'];
if ($node->type == 'XXXX') {
                          $vars['tabs'] = str_replace('View', $node->title, $vars['tabs']);
}
}
}

and it works but i would really want to know if there is a cleaner way to do it..  

Cheers,
Mukesh



On Thu, May 27, 2010 at 9:57 AM, Mukesh Agarwal <mike4u4ever2001@gmail.com> wrote:
Hi,

I'm trying to change the title of the menu item "View" on a node page.. I want to change the tab name to be the title of the node (with an ellipsis if it goes beyond a limit).. This means the title of the tab here will be dynamic.. I've tried using hook_menu_alter and tried to change the title of the menu item 'node/%node/view' with some code.. I tried 3 ways -- one, get the title using a query with arg(1), two, by page_get_title, and 3 by menu_get_object to get the respective node and then the title.. None of the approaches has worked for me.. If you guys know a quick solution, that would be wonderful.. I dont want to change it via tpl for sure..

PS: I've also tried hook_menu_link_alter but it did not work

Cheers,
Mukesh


--
[ Drupal support list | http://lists.drupal.org/ ]



--
Cheers
Sumeet Pareek