Typo3 8.7: имя модуля не отображается в бэкэнде - PullRequest
0 голосов
/ 22 января 2019

В моем расширении Typo3 8.7 я регистрирую модуль для бэкэнда.Сам модуль работает нормально, к сожалению, название не отображается.(Имя в списке слева в меню модуля).

Я прочитал доку и сделал все, что там написано.Я активировал расширение несколько раз и удалил весь кеш (установите кеш, а также).

Вот мой код в ext_tables.php:

if (TYPO3_MODE === 'BE') {
call_user_func(
    function ($extKey) {
        \TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerModule(
            'TYPO3.' . $extKey,   
            'Customer Administration',      
            'Customer Administration',          
            '',                    
            array(                  
                'BackendManagement' => 'list,  membershipInformationBackend',
                'FrontendManageCertificate' => 'showCertificateDetails'
            ),
            array(                 
                'access' => 'user,group',
                'icon' => 'EXT:' . $extKey . '/ext_icon_small.svg',
                'labels' => 'LLL:EXT:' . $extKey . '/Resources/Private/Language/locallang_shop_backend.xlf',
            )
        );

    },
    $_EXTKEY
);

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript', 'someExt');

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('tx_someExt_domain_model_backendcustomer', 'EXT:someExt/Resources/Private/Language/locallang_csh_tx_someExt_domain_model_backendcustomer.xlf');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_someExt_domain_model_backendcustomer');
}

Заранее спасибо.

1 Ответ

0 голосов
/ 22 января 2019

Давай, мой друг, я нашел только одну ошибку в твоем коде. Вы не передали ключ файла перевода. Это возможная проблема, пожалуйста, проверьте решение ниже:

ext_tables.php

if (TYPO3_MODE === 'BE') {
call_user_func(
    function ($extKey) {
        \TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerModule(
            'TYPO3.' . $extKey,   
            'Customer Administration',      
            'Customer Administration',          
            '',                    
            array(                  
                'BackendManagement' => 'list,  membershipInformationBackend',
                'FrontendManageCertificate' => 'showCertificateDetails'
            ),
            array(                 
                'access' => 'user,group',
                'icon' => 'EXT:' . $extKey . '/ext_icon_small.svg',
                'labels' => 'LLL:EXT:' . $extKey . '/Resources/Private/Language/locallang_shop_backend.xlf:shopModule', // Here is the problem
            )
        );

    },
    $_EXTKEY
);

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript', 'someExt');

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('tx_someExt_domain_model_backendcustomer', 'EXT:someExt/Resources/Private/Language/locallang_csh_tx_someExt_domain_model_backendcustomer.xlf');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_someExt_domain_model_backendcustomer');
}

locallang_shop_backend.xlf

<trans-unit id="shopModule">
    <source>Shop Management</source>
</trans-unit>

Предложение: Если вы создали расширение с помощью компоновщика расширений, существует один автоматически созданный файл с именем locallang_db.xlf , использующий этот файл для внутренней маркировки.

Надеюсь, это имеет смысл!

...