TYPO3 Крючок для предварительного просмотра на нескольких языках - PullRequest
1 голос
/ 05 апреля 2019

У меня установлена ​​TYPO3 с несколькими языками. Теперь я хочу создать функцию, которая, если, например, французский редактор с французскими настройками, перейдет к представлению (или предварительному просмотру страницы), что он получит французскую версию, а не язык по умолчанию.

Моей первой идеей было использовать PageLayoutViewDrawItemHookInterface, а затем изменить URL-адрес для нужного языка

в ext_localconf.php

$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/class.tx_cms_layout.php']['tt_content_drawItem']['tx_editordashboard'] =
    \Vendor\Editordashboard\Hooks\Backend\CheckUserCountry::class;

в моем классе CheckUserCountry.php

<?php

namespace TRUMPF\Editordashboard\Hooks\Backend;

use \TYPO3\CMS\Backend\View\PageLayoutViewDrawItemHookInterface;
use \TYPO3\CMS\Backend\View\PageLayoutView;

class CheckUserCountry implements PageLayoutViewDrawItemHookInterface
{


/**
 * Preprocesses the preview rendering of a content element.
 *
 * @param \TYPO3\CMS\Backend\View\PageLayoutView $parentObject Calling 
 parent object
 * @param bool $drawItem Whether to draw the item using the default 
functionalities
 * @param string $headerContent Header content
 * @param string $itemContent Item content
 * @param array $row Record row of tt_content
 */
public function preProcess(PageLayoutView &$parentObject, &$drawItem, 
&$headerContent, &$itemContent, array &$row) {echo "bam";}
}

Но хук не работает, если я нажимаю кнопку «Просмотр». Какие-нибудь идеи так решают проблему?

...