4 votes

Inclure le fichier CSS dans le backend de TYPO3 ?

J'essaie d'inclure ma feuille de style en cascade dans mon extension TYPO3. J'ai créé l'extension avec "kickstarter". Voici la façon dont j'ai essayé de l'inclure :

$this->doc->getPageRenderer()->addCssFile(t3lib_extMgm::extRelPath('myExt') . 'res/css/my_stylesheet.css');

J'ai ajouté cette ligne à la fin de la main() méthode. Alors, qu'est-ce que je fais de mal ? Le chemin incluant le fichier existe bel et bien.

Merci.

7voto

Fedir Points 3235

Et si vous souhaitez inclure le fichier CSS dans un autre module que le vôtre, sans le modifier, vous pouvez utiliser le tableau $TBE_STYLES.

ext_tables.php :

// Custom CSS include
if (TYPO3_MODE=="BE")   {
    $TBE_STYLES['inDocStyles_TBEstyle'] .= '@import "/typo3conf/ext/your_ext/res/css/your.css";';
}

6voto

Forlan07 Points 3829

Ok, j'ai finalement pu résoudre le problème.

En ajoutant le code juste après l'instanciation de l'objet "doc", tout fonctionne bien.

$this->doc = t3lib_div::makeInstance('mediumDoc');
$this->doc->getPageRenderer()->addCssFile(t3lib_extMgm::extRelPath('myExt') . 'res/css/my_stylesheet.css');

1voto

Mihir Bhatt Points 128

L'astuce de Belo fonctionne pour la version 8.7.X de TYPO3.

Étape-1 Ajouter les lignes suivantes dans le fichier ext_tables.php

$GLOBALS['TBE_STYLES']['skins'][$_EXTKEY]['name'] = $_EXTKEY;
$GLOBALS['TBE_STYLES']['skins'][$_EXTKEY]['stylesheetDirectories']['css'] = 'EXT:'.$_EXTKEY.'/stylesheets/visual/';

Etape 2 : Définir le fichier css avec n'importe quel nom au chemin donné (dans notre cas son ' Feuilles de style/visuel/ à l'intérieur de l'extension)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X