簡體   English   中英

如何在Drupal中使用is_user_logged_in()?

[英]How to use is_user_logged_in() in Drupal?

我正在嘗試在模板文件夾中編輯page.tlp.php,以根據用戶是否登錄來修改網站的標題url鏈接。

例如,如果未登錄,則顯示第1頁,否則顯示第2頁。代碼保持簡單以測試功能。

        <div id="site-name"<?php if ($hide_site_name) { print ' class="element-invisible"'; } ?>>
          <strong>
            <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
    <?php if (is_user_logged_in()) {echo "hi";} ?>
          </strong>

        </div>

此時,error.log表示已調用未定義函數。

我是想將其編寫為模塊,還是可以在模板文件中僅包含php,但我需要聲明一些內容,或者我在這里完全偏離了軌道?

函數名稱是'user_is_logged_in',而不是'is_user_logged_in'(在wordpress中) https://api.drupal.org/api/drupal/modules%21user%21user.module/function/user_is_logged_in/7

使用變量$ logged_in,它在drupal中默認添加

您不應該在tpl文件中調用函數,而是使用preproccess_page掛鈎添加所需的所有變量。

function mytheme_preprocess_page(&$variables) {
  $variables['is_awesome'] = ($GLOBALS['user']->name == 'MyName');
}

之后變量$​​ is_awesome將在您的page.tpl.php中可用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM