web-dev-qa-db-fra.com

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

Quelqu'un peut-il s'il vous plaît expliquer le processus derrière tp = 1 pour la prévisualisation des positions de mod, j'ai trouvé la sortie du module qui est appelée depuis templates/system/html/module.php function 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’on y accède via tp = 1, le site est forcé d’utiliser un modèle système mais je suis à la recherche du 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 customoutline chrome dans modules.php. Je ne reçois toujours que les mods publiés sur cette page, mais pas toutes les positions de module.

Quelqu'un peut-il m'expliquer ou me montrer où (quel fichier) se trouve le processus?.

Merci!

8
Dan

Trouvé, manquait encore une dérogation 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 créer votre propre aperçu des mods

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

remplacer la classe d’assistance du module ( voir this ) 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#L2

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

avec

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

vous pouvez maintenant contrôler l’aperçu de la position des modules à partir de votre template/html/module.php et le rendre meilleur que ce que nous avons dans j default depuis 1.0

accéder à l'aperçu via

sitename/?myoutline=1

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

Afin que nous puissions montrer aux utilisateurs toutes les positions de module disponibles pour notre framework de gabarit

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

Avec le remplacement en place, je peux maintenant supprimer tous ces 50 modules et plus 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 vieilles démos

avec beaucoup moins de modules.

6
Dan