TYPO3:在控制器动作中创建一个 FE 用户

TYPO3: Create a FE user inside controller action

我想创建一个具有自定义扩展(使用扩展构建器创建)的 FE 用户。 我不想使用 fe_user_registration 或类似的东西,因为还需要许多其他自定义功能,当一些白痴不小心更新它时,这些功能可能会丢失。

我正在使用 TYPO3 7.6.8

Extbase 带有一个model and a repository for manipulating frontend users. They also have a model and a repository 用于处理前端用户组。

以通常的方式使用它们。您可能需要 fiddle 一点才能使存储页面正确,但它会起作用。我不确定密码是否会自动进行哈希处理,所以请检查一下。

首先,在你想使用它的地方注入一个 FrontendUserRepository:

/**
 * @var \TYPO3\CMS\Extbase\Domain\Repository\FrontendUserRepository
 * @inject
 */
protected $frontendUserRepository;

然后创建一个前端用户并使用存储库持久化它:

$frontendUser = new FrontendUser();
$frontendUser->setUsername('myusername');
// Set more values

$this->frontendUserRepository->add($frontendUser);