OJS-配置变量的位置

时间:2012-03-27 15:09:09

标签: php configuration smarty ojs

任何人都知道下面的$ isUserLoggedInor $ hideRegisterLink变量在哪里获取数据? 代码来自OJS中的navar.tpl http://pkp.sfu.ca/?q=ojs

注意:OJS使用聪明的模板

   {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 *}

2 个答案:

答案 0 :(得分:0)

如果有人对我以外的其他人感兴趣,那么它来自OJS的预定义变量,它可以访问此页面以获取更多信息http://pkp.sfu.ca/ojs/docs/technicalreference/2.1/userInterfaceVariables.html

答案 1 :(得分:0)

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

您通常可以通过点击来找到它,例如:

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

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