Quelqu'un peut-il expliquer le processus tp = 1?

8

Quelqu'un peut-il expliquer le processus derrière tp = 1 pour l'aperçu des positions de mod, j'ai trouvé la sortie du module qui est appelée depuis la fonction templates / system / html / module.php modChrome_outline(...)

et je sais que le style est forcé si le site est accessible via tp = 1 var https://github.com/joomla/joomla-cms/blob/7d55d68cfbfe2b86589f2df9aab1771afce4fab0/libraries/cms/module/helper.php#L229

ce que je suppose, c'est que lorsqu'il est accessible via tp = 1, le site est obligé d'utiliser un modèle de système, mais je recherche un processus réel et je ne le trouve pas.

Si ici https://github.com/joomla/joomla-cms/blob/7d55d68cfbfe2b86589f2df9aab1771afce4fab0/libraries/cms/module/helper.php#L231

je change

$attribs['style'] .= ' outline';

à

$attribs['style'] .= ' customoutline';

et avoir mon chrome de contour personnalisé dans modules.php Je n'ai toujours que les mods publiés sur cette page, pas toutes les positions des modules.

Alors, quelqu'un peut-il expliquer ou me montrer où (quel fichier) se trouve le processus.

Je vous remercie!

Dan
la source

Réponses:

6

Je l'ai trouvé, il manquait un autre remplacement qui était ci-dessous

https://github.com/joomla/joomla-cms/blob/7d55d68cfbfe2b86589f2df9aab1771afce4fab0/libraries/cms/module/helper.php#L98 .

Donc, pour résumer,

si vous souhaitez faire un aperçu de vos propres mods

créez votre chrome d'aperçu dans templates / your_template / html / modules.php

remplacer la classe d'assistance du module ( voir ceci ) en ajoutant

    // my preview
    if ($app->input->getBool('myoutline'))
    {
        $attribs['style'] .= ' myoutline';
    }

ici

https://github.com/joomla/joomla-cms/blob/7d55d68cfbfe2b86589f2df9aab1771afce4fab0/libraries/cms/module/helper.php#L233

et étendre cette instruction if https://github.com/joomla/joomla-cms/blob/7d55d68cfbfe2b86589f2df9aab1771afce4fab0/libraries/cms/module/helper.php#L98

avec

 || $input->getBool('myoutline')

maintenant vous pouvez contrôler l'aperçu des positions des modules à partir de votre modèle / html / module.php et le rendre meilleur que ce que nous avons en j par défaut depuis 1.0

accéder à l'aperçu via

sitename/?myoutline=1

Je vais étendre cela un peu plus et vous montrer pourquoi je l'ai fait.

Afin que nous montrions aux utilisateurs toutes les positions de module disponibles pour notre cadre de modèle

nous devons publier plus de 50 positions de module qui sont tout simplement du HTML. À mes yeux, c'est une surcharge.

Avec le remplacement en place, je peux maintenant supprimer tous ces 50+ modules et contrôler l'aperçu

et le contenu via la fonction chrome

http://prntscr.com/3im4yl

donc j'ai toujours le même aperçu que sur nos anciennes démos

avec beaucoup moins de modules.

Dan
la source