Globale Smarty-Variable

Ich habe ein Script, das ein am Anfang des Seitenaufbaus ein paar Variablen setzen soll. In Abhängigkeit von diesen Variablen wird dann der Seiteninhalt ein bisschen modifiziert.
Das Problem ist: Es schein nicht möglich, globale Variablen mit Smarty zu setzen, wie das in der Dokumentation (http://www.smarty.net/docs/en/language.function.assign.tpl) beschrieben steht.

Konkret sieht das ganze so aus:
[ul]
[li][I]layout/page.tpl[/I][/li]```php
[{oxscript include=“variable_setter.tpl”}]


[li][I]variable_setter.tpl[/I][/li]```php
[{assign var="global_var" value="test" scope="root"}]

[/ul]

Jetzt sollte die Variable [I]global_var[/I] ja in [I]layout/page.tpl[/I] sowie in allen anderen Scripten verfügbar sein. Ist sie aber leider nicht. Was mache ich falsch?

Hi,
ich behelfe mir mit einem Trick, indem ich über PHP in eine globale Variable speichere und diese dann in allen Templates (wo benötigt) wieder in lokale Template-Variablen überführe.
Umständlich, klappt aber:

in template 1 (z.B. header)
Template-Variable füllen und in globale PHP-Variable überführen

[{ assign var="hide_us_styles" value="1" }]         
[{php}]        
$GLOBALS['hide_us_styles'] = $this->_tpl_vars['hide_us_styles'];
[{/php}]        

in template 2
aus PHP auslesen und
wieder als template variable verfügbar machen

[{php}]
$this->_tpl_vars['hide_us_styles']=$GLOBALS['hide_us_styles'];
[{/php}]

Oha…

Wäre es da nicht einfacher und vor allem [B]sauberer[/B], ein Modul zu schreiben, was bestimmte Variabeln mit an den Variabel-Scope von Smarty anfügt, bevor die Templates gerendered werden?

Klingt gut - wie geht das?