0

以下の $ isUserLoggedInor $hideRegisterLink 変数がどこからデータをフェッチしているのか、誰にもわかりますか? コードは OJS http://pkp.sfu.ca/?q=ojsの navar.tpl からのものです。

注: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 *}
4

2 に答える 2

0

私以外の誰かが興味を持っている場合、それはOJS自体の事前定義された変数から来ています。詳細については、このページにアクセスしてくださいhttp://pkp.sfu.ca/ojs/docs/technicalreference/2.1/userInterfaceVariables.html

于 2012-03-28T14:31:19.260 に答える
0

これは、具体的にどの変数に関心があるかによって異なります。$isUserLoggedIn の場合は、lib/pkp/classes/template/PKPTemplateManager.inc.php です (いくつかの PKP アプリケーションで使用される他の多くのグローバルに役立つ変数と同様)。$hideRegisterLink の場合は、classes/template/TemplateManager.inc.php です (同じですが、OJS アプリケーションに固有です)。

通常、これは grep で見つけることができます。たとえば、次のようになります。

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

テンプレートが単一のページでのみ使用される場合 (例は、MVC 用語のビューに対応する pages/ にあります)、またはプラグインに表示される場合 (例については plugins/ を参照してください) など、他にも多くの具体的なケースがあります。 )。

于 2014-05-14T21:36:56.013 に答える