[development] So confused about arg(...)

Earl Miles merlin at logrus.com
Thu Jan 14 16:50:09 UTC 2010

Earl Miles wrote:
> Nancy Wichmann wrote:
>> I’m working on a hook_preprocess_page and it seems to be behaving 
>> strangely. I have:
>>   drupal_set_message(‘stuff ‘. arg(0) . ‘/’ . arg(1));
>>   $variables[‘nancy’] = $hook . arg(0) . ‘/’ . arg(1);
>> In exactly that order, with no intervening lines.
>> Displaying the variable in the page.tpl.php shows “page taxonomy/term” 
>> but the message shows “stuff r/ms” (even if I refresh the page, or 
>> clear the cache). How can this be happening?
> Because you're doing this in the page template, please note that your 
> dsm() will be one refresh behind.

Oh I meant to explain this.

$messages is built in template_preprocess_page(). You're running in 
THEME_preprocess_page() which runs after template_preprocess_page(). 
$messages is already constructed, so anything you put in dsm() will go 
into the $_SESSION variable and show up in the NEXT processing of $messages.

More information about the development mailing list