2012-03-27 95 views
0

有没有人有任何想法,从$ isUserLoggedInor $ hideRegisterLink变量获取其数据? 该代码是从navar.tpl在OJS http://pkp.sfu.ca/?q=ojsOJS-配置变量的位置

注:OJS使用Smarty的模板

{if $isUserLoggedIn} 
     <li id="userHome"><a href="{url page="user"}"> 
    {translate key="navigation.userHome"}</a></li> 


    {else} 

     <li id="login"><a href="{url page="login"}"> 
        {translate key="navigation.login"}</a></li> 

     {if !$hideRegisterLink} 
      <li id="register"> 
        <a href="{url page="user" op="register"}"> 
        {translate key="navigation.register"}</a></li> 
     {/if} 

    {/if}{* $isUserLoggedIn *} 

回答

0

这取决于你感兴趣的变量。对于$ isUserLoggedIn,它是lib/pkp/classes/template/PKPTemplateManager.inc.php(与在几个PKP应用程序中使用的许多其他全局有用变量一样)。在$ hideRegisterLink的情况下,它是classes/template/TemplateManager.inc.php(与OJS应用程序相同,但特定)。

你通常可以通过grepping,例如:发现这个

grep -l -e "'hideRegisterLink'" `find . -name \*.inc.php` 

还有很多其他更具体的情况,例如当一个模板只在一个页面中使用时(例子可以在pages /中找到,它对应于MVC术语中的View),或者当它出现在插件中(参见插件/例子)。