TYPO3 ViewHelper 未加载

TYPO3 ViewHelper is not laded

我正在尝试为 TYPO3 Fluid 编写自己的 ViewHelper

我这里有文件:typo3conf/ext/ff_invest/Classes/ViewHelpers/LoremIpsumViewHelper.php

在这个文件中我有这个代码:

<?php
namespace Originalen\FfInvest\ViewHelpers;
/**
 * This class is a demo view helper for the Fluid templating engine.
 *
 * @package TYPO3
 * @subpackage Fluid
 * @version
 */
class LoremIpsumViewHelper extends Tx_Fluid_Core_ViewHelper_AbstractViewHelper {

/**
 * Renders some classic dummy content: Lorem Ipsum...
 *
 * @param int $length The number of characters of the dummy content
 * @validate $length IntegerValidator
 * @return string dummy content, cropped after the given number of characters
 * @author Lorem Ipsum <lorem@example.com>
 */
public function render($length) {
    $dummyContent = 'Lorem ipsum dolor sit amet.';
    return substr($dummyContent, 0, $length);
}
}

在我的模板文件中List.html我有

{namespace blog=Originalen\FfInvest\ViewHelpers}

在文件的顶部和

<blog:LoremIpsum length="5" />

在f.section部分。

但我一直收到此错误 "Could not analyse class: "Originalen\FfInvest\ViewHelpers\LoremIpsumViewHelper“可能未加载或没有自动加载器”。

我猜某处有拼写错误。但是我找不到。

命名空间与扩展的其他文件中的命名空间相同。

更改您的 viewhelper class 以使用名称空间扩展核心 classes:

class LoremIpsumViewHelper extends \TYPO3\CMS\Fluid\Core\ViewHelper\AbstractViewHelper {
  ...
}

TYPO3 7.6 将自动加载缓存放入“typo3temp/autoload/” - 因此在删除此文件夹后新的 类 被识别。

顺便说一句:扩展 typo3_console 提供了一个 CLI 命令来执行相同的操作:

./typo3cms extension:dumpautoload