2017-01-07 4 views
1

Я заметил, что на некоторых моих расширениях TYPO3 7.6 действие, похоже, вызывается дважды, например listAction. Если я поместил vardump или эхо, он будет выводиться дважды, однако шаблон отображается правильно один раз. Я не могу обнаружить ошибки в коде. Странно, что на другом сайте это не происходит с тем же расширением.TYPO3 Extbase action, вызываемый дважды

Что может быть причиной этого и как я могу его отладить?

+0

Не могли бы вы поделиться своим кодом контроллера? – Lasse

ответ

4

Может быть, вы используете page.10.variables? Проверьте мой ответ здесь what is the best usage of typoscript in fluid templates?

+2

Действительно, я узнал, что в моей общей настройке шаблонов сайтов я использовал две page.10.переменные, которые смотрели на .select.where = colPos = 1 Даже если вторая переменная не находится в шаблоне страницы, они, похоже, запускают вещи дважды. – Jack70

+1

У меня была аналогичная проблема, и этот ответ и тот, с которым вы связались, помогли мне решить его. Большое спасибо! – wirap

0

Возможно, плагин вставлен дважды на эту страницу? Создайте новый плагин на другой странице и посмотрите, есть ли двойная отладка.

+0

Спасибо за вашу реакцию, но плагин вставлен только один раз. Также на другой странице. – Jack70

+0

Возможно, он также включен где-то в typoscript? '$ this-> contentObj = $ this-> configurationManager-> getContentObject();' ' $ UID = $ this-> contentObj-> данные [ 'UID'];' Try отладить жидкости. Если это то же самое, мы можем быть уверены, что это действительно тот же ContentObject. –

+0

Он выводит дважды тот же uid. – Jack70

0

Я заметил что-то подобное при использовании fluidTYPO3. Причина заключалась в том, что раздел конфигурации шаблона флюида должен был анализироваться и выполняться для построения структуры гибкой формы для считывания и записи данных flexform. Итак, шаблон можно разобрать и выполнить дважды, но действие php вызывается только один раз. Вы можете проверить это демпинг некоторых переменные в своем действии с: \TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump($data, __FILE__.':L'.__LINE__);