TYPO3: Расширение для запуска кода PHP

Это больше похоже на основной вопрос:

Как получить расширение (с помощью Extension Builder) для запуска простого PHP-кода без добавления модели предметной области и действий?


person Norman    schedule 17.08.2016    source источник
comment
@ViktorLivakivskyi Эта версия выглядит многообещающе, но я до сих пор не знаю, как включить вывод в свой шаблон. При добавлении шаблона html по умолчанию в мое расширение он запрашивает контроллер по умолчанию, которого нет и не должно существовать.   -  person Norman    schedule 17.08.2016
comment
Ну, вы можете попробовать использовать StandaloneView, просто создать его экземпляр, ->setTemplateRootPaths(...), а затем вернуть результат ->render(), но будет удобнее, если вы создадите нормальный Extbase Controller и получите много магии из коробки.   -  person Viktor Livakivskyi    schedule 17.08.2016


Ответы (1)


В общем есть 3 варианта:

Я бы все же пошел с вариантом номер 3 и, следовательно, вам все равно потребуется действие. Наличие действий — это хорошо, потому что вы добавляете 2-й вариант, вы можете просто использовать 2-е действие, и вам не нужно много дополнительного кода.

Иметь такое расширение довольно легко. Одним из примеров, который я недавно сделал, было это расширение: https://github.com/sup7even/mailchimp.

В целом вам нужно:

ext_localconf.php

\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
    'Sup7even.' . $_EXTKEY,
    'Registration',
    array(
        'Form' => 'index,response,ajaxResponse'
    ),
    array(
        'Form' => 'index,response,ajaxResponse'
    )
);

ext_tables.php

\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin(
    'Sup7.' . $_EXTKEY,
    'Registration',
    'Mailchimp'
);

И RegistrationController. По умолчанию будет вызвано первое действие, которое в данном случае является index, поэтому вам нужен indexAction, а шаблон должен быть Templates/Registration/Index.html.

person Georg Ringer    schedule 17.08.2016