亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何從拼寫錯誤 (.ts) 文件調用 TYPO3 自定義 viewhelper 并從

如何從拼寫錯誤 (.ts) 文件調用 TYPO3 自定義 viewhelper 并從

PHP
斯蒂芬大帝 2023-04-21 14:06:16
我試圖從錯別字文件調用 TYPO3 9.5.9 中的自定義 viewhelper。但它不起作用。下面給出了 viewhelper 的示例:<?phpnamespace MyVendor\BlogExample\ViewHelpers;use TYPO3Fluid\Fluid\Core\Rendering\RenderingContextInterface;use TYPO3Fluid\Fluid\Core\ViewHelper\Traits\CompileWithRenderStatic;use TYPO3Fluid\Fluid\Core\ViewHelper\AbstractViewHelper;class GravatarViewHelper extends AbstractViewHelper{   use CompileWithRenderStatic;   public static function renderStatic(       array $arguments,       \Closure $renderChildrenClosure,       RenderingContextInterface $renderingContext   ) {       return 'World';   }}如何從打字錯誤 (.ts) 文件中調用此自定義 viewhelper 并獲得響應?
查看完整描述

3 回答

?
紫衣仙女

TA貢獻1839條經驗 獲得超15個贊

我建議您將“執行 ViewHelper 的操作”的函數提取到一個單獨的方法中,并使其可以將此方法作為公共方法調用,并使其接收所需的 PHP 函數參數(例如,用戶電子郵件地址) *包裹在一個array $parameters.

然后可以從 ViewHelper 和 TypoScript 調用此方法。TypoScript 類似于:

lib.myGravatarObject = USER
lib.myGravatarObject.userFunc = MyVendor\ExtensionName\GravatarRenderer
lib.myGravatarObject.userEmail = [email protected]

如果您命名的屬性與array $parameters您的 ViewHelper 參數相同,您可以簡單地傳遞$this->arguments$arguments從 ViewHelper 內部傳遞(前者如果您正在實施render(),后者如果您正在實施renderStatic())。它還使您在 TS 中使用與用于 ViewHelper 參數相同的屬性名稱變得更加透明。


查看完整回答
反對 回復 2023-04-21
?
狐的傳說

TA貢獻1804條經驗 獲得超3個贊

您可以使用帶有最小模板的 FLUIDTEMPLATE cObject(例如通過模板屬性):


10 = FLUIDTEMPLATE

10 {

   template.cObject = TEXT

   template.cObject.value(

      <html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" xmlns:mv="http://typo3.org/ns/MyVendor/BlogExample/ViewHelpers" data-namespace-typo3-fluid="true">

      <mv:GravatarViewHelper />

   )

}

這似乎是可能的。但正如 Bernd 已經問過的:為什么要那樣做?


查看完整回答
反對 回復 2023-04-21
?
Qyouu

TA貢獻1786條經驗 獲得超11個贊

你為什么要這樣做?(請描述您的用例)

Viewhelpers 用于 FLUID 模板,那里有正確且匹配的上下文。

如果您想直接在 typoscript 中調用 PHP 函數,您可以選擇userfunc(手動)。但是您需要提供必要的上下文。



查看完整回答
反對 回復 2023-04-21
  • 3 回答
  • 0 關注
  • 148 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號