簡體   English   中英

Typo3-Typoscript將FE用戶名設置為常量

[英]Typo3 - Typoscript set FE username as a constant

我目前正在嘗試將當前登錄的FE用戶的用戶名添加為常量。 我嘗試了以下方法,但它似乎不起作用。

Username = TSFE:fe_user|user|username

以此為起點

我想知道如何將FE用戶名轉換為常量,以便在我需要其他打字稿時隨時調用它。

這是我要獲取用戶名的拼寫錯誤,此刻它只是將公司名稱添加到定義為常量的其他地方,但是我也想添加用戶名。 我嘗試為用戶名添加全局變量,但沒有任何樂趣。

[usergroup = *]
config.tx_we_google_analytics {
        _setCustomVar = 1, 'Client', '{$companyName} - {TSFE:fe_user|user|username}',2
        }
[end]

提前謝謝了

鮑勃

您可以在TypoScript安裝程序內直接使用適當的全局變量,我認為不需要常量。 您提供的示例是我正在談論的全局變量,您可以在活字設置中的任何getText上下文中使用該變量。

例如

temp.userName = TEXT
temp.userName.data = TSFE:fe_user|user|username

TypoScript常數僅允許直接值分配,無法將任何其他“變量”分配給常數IMHO。

嘗試這個。 如果幸運的話,它可以工作。

[usergroup = *]
config.tx_we_google_analytics {
    _setCustomVar.cObject = TEXT
    _setCustomVar.cObject.value = 1, 'Client', '{$companyName} - {TSFE:fe_user|user|username}',2
    _setCustomVar.cObject.insertData = 1
}
[end]

如果不是,則必須修改插件代碼以通過stdWrap處理配置值。 該代碼可在插件控制器中使用

$configValue = $this->cObj->stdWrap('',$GLOBALS['TSFE']->tmpl->setup['config.']['tx_we_google_analytics.']['_setCustomVar.']);

或更簡單(控制器內仍舊)

$configValue = $this->cObj->stdWrap('',$this->conf['_setCustomVar.']);

我不建議使用擴展程序插入與Google Analytics(分析)代碼段一樣基本的內容。 每個擴展都會降低系統速度,並降低其維護性。

我不知道您的customVar會做什么,但是您可以嘗試類似

temp.analytics = COA
temp.analytics {

  10 = TEXT
  10.value (
    first part of GA snippet
  )

  20 = TEXT
  20.data = TSFE:fe_user|user|username

  30 = TEXT
  30.value (
     rest of GA Snippet
  )

}

然后將您的代碼段插入到所需的位置,例如headerData.99 < temp.analytics ,就可以完成。

甚至嘗試使用wrap和insertData = 1。

如Artur所說,如果數據未以.wrap呈現,請始終嘗試stdWrap.wrap-它傾向於添加功能(盡管afaik默認情況下一直在努力通過stdWrap傳遞每個包裝,但我認為它並未完全實現)。

暫無
暫無

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

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