首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TYPO3:插件没有出现在后端

问TYPO3:插件没有出现在后端
EN

Stack Overflow用户
提问于 2018-04-23 15:38:15
回答 2查看 1.2K关注 0票数 0

这是T3 v7.7.25,我尝试构建我的第一个扩展。其想法是在后端有一个可选择的内容元素,它的html模板文件只做一个php回显。

我的emconf:

代码语言:javascript
复制
<?php

$EM_CONF[$_EXTKEY] = [
        'title' => 'Robert PHP',
        'description' => 'An extension to use PHP.',
        'category' => 'plugin',
        'author' => 'John Doe',
        'author_company' => 'John Doe Inc.',
        'author_email' => 'john.doe@example.com',
        'state' => 'alpha',
        'clearCacheOnLoad' => true,
        'version' => '0.0.0',
        'constraints' => array(
            'depends' => array(
            'extbase' => '6.0',
            'fluid' => '6.0',
            'typo3' => '6.0',
            )
        )
];

我的ext_tables:

代码语言:javascript
复制
<?php

    if(!defined('TYPO3_MODE')) die ('Access denied.');


    \TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin(
        $_EXTKEY,
        'Robert',
        'Beschreibung fuer Auswahl'
    );

我的本地人:

代码语言:javascript
复制
<?php

    if(!defined('TYPO3_MODE')) die ('Access denied.');

    \TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
        $_EXTKEY,
        'Robert',
        array(
            'Php' => 'include'
        ),
        array()
    );

我的控制器:

代码语言:javascript
复制
<?php

    class Tx_RobertPhp_Controller_PhpController extends \TYPO3\CMS\Extbase\Mvc\Controller\ActionController
    {
        public function includeAction() {

        }
    }

我的模板:

代码语言:javascript
复制
<?php
echo "echo aus der ext";
?>

我不能选择后端的插件,所以registerPlugin肯定有问题。但是,由于我没有看到错误消息,我发现很难找到这个问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-23 17:23:51

首先,不能在流体模板中使用PHP标记。Extbase控制器中的操作使用流体模板。

流体模板必须位于正确的位置:Resources/Private/Templates/[ControllerName]/[ActionName].html。在您的例子中,应该是Resources/Private/Templates/Php/Include.html。

请使用名称空间,它是在PHP5.3中引入的。

只需查看其他扩展,例如博客示例。

票数 0
EN

Stack Overflow用户

发布于 2018-04-24 04:24:08

TYPO3前端插件是在ext_localconf.php文件中注册的。如果您想要添加后端模块,那么您需要在registerPlugin中添加ext_tables.php,否则这不是必需的。

另外,您的ext_localconf.php文件插件配置如下所示。

代码语言:javascript
复制
<?php
defined('TYPO3_MODE') || die('Access denied.');

\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
    'MyVendor.extensionkey',
    'plugin_name',
    array(
        'Controller' => 'action',
    ),
    // non-cacheable actions
    array(
        'Controller' => '',
    )
);

此外,您还需要指定流体模板路径,如上面的答案。有关extbase扩展的更多信息,请参见Extbase扩展

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49984912

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档