- Vous êtes ici :
-
Accueil
-
blog / tutoriels
-
Tutoriels YouJoomlaSimpleGrid
- YJSG - Notions de base
Il existe plusieurs façons d'inclure votre code Javascript personnalisé dans Joomla. Dans ce tutoriel, nous allons vous expliquer comment les utiliser et quel est le meilleur en fonction du code que vous souhaitez inclure.
L'administration du template YJSG est fournie avec un onglet Code personnalisé que vous pouvez utiliser pour ajouter vos extraits JavaScript personnalisés dans l'entête ou le pied de page du template.

En joomla vous pouvez utiliser la classe JDocument pour ajouter des fichiers Javascript personnalisés ou un bloc de code Javascript dans la section head de votre template.
Ce premier exemple montre comment ajouter un fichier Javascript personnalisé dans un template basé sur YJSG.
Pour votre commodité, vous pouvez utiliser le nom de fichier yjsg_custom_params.php pour ajouter des fichiers personnalisés ou des blocs de code.
Ce fichier est situé dans le dossier racine/template/yjsg_template_name/custom/ .
Commencez par déplacer votre fichier Javascript dans le dossier racine/template/yjsg_template_name/src/ , ouvrez yjsg_custom_params.php et ajoutez cette ligne:
exemple:
$document->addScript($yj_site.'src/my_new_js_file.js');
Cette option est spécifique aux tempaltes basés uniquement sur YJSG et est utilisée pour charger votre fichier Javascript après que tous les scripts du template et les fichiers de la bibliothèque Javascript Joomla aient été chargés.
Pour utiliser $YjsgCustomJS déplacez d'abord votre fichier JavaScript vers le dossier racine/template/yjsg_template_name/src/ , ouvrez yjsg_custom_params.php et ajouter cette ligne:
exemple:
$YjsgCustomJS= array(); $YjsgCustomJS[] = $yj_site.'src/my_new_js_file.js';
Pour ajouter plusieurs fichiers, ajoutez cette ligne dans yjsg_custom_params.php
exemple:
$YjsgCustomJS= array(); $YjsgCustomJS[] = $yj_site.'src/my_new_js_file.js'; $YjsgCustomJS[] = $yj_site.'src/my_new_js_file2.js';
Pour ajouter un bloc de code JavaScript, ouvrez yjsg_custom_params.php et ajouter cette ligne
exemple:
$document->addScriptDeclaration("var myVar = 'myValue';");
Un des avantages de l'utilisation de la variable $yjsg_js est que cela charge votre code de bloc Javascript en bas de votre page au lieu de dans le head.
De cette façon, les blocs de code n'encombrent pas le chargement de votre page et c'est beaucoup mieux pour votre SEO du site Web. Pour de meilleures performances et des balises d'entête plus propres $yjsg_js est répercuté à la fin de la page dans layouts/yjsg_footer.php. L'utilisation est très simple et est similaire à JDocument/addScriptDeclaration.
Ajoutez juste la ligne suivante au fichier yjsg_custom_params.php .
exemple:
$yjsg_js.="var myVar ='my_js_var;'";
Attention: ne pas oublier le point avant l'opérateur =.
Dans YJSG, vous pouvez ajouter 7 grilles supplémentaires. Chaque grille peut contenir jusqu'à 5 modules. Veuillez noter qu'ils doivent tous être nommés comme vous le voyez dans l'exemple ci-dessous. La seule variable modifiable est le nom de votre position de module. Vous pouvez nommer vos positions de module tels que . modNames situés dans la fonction yjsg_print_grid_area comme vous le désirez.
<?php yjsg_print_grid_area('yjsgName=newgrid1|modNames=commevousvoulez'); ?>
<?php yjsg_print_grid_area('yjsgName=newgrid2|modNames=commevousvoulez'); ?>
<?php yjsg_print_grid_area('yjsgName=newgrid3|modNames=commevousvoulez'); ?>
<?php yjsg_print_grid_area('yjsgName=newgrid4|modNames=commevousvoulez'); ?>
<?php yjsg_print_grid_area('yjsgName=newgrid5|modNames=commevousvoulez'); ?>
<?php yjsg_print_grid_area('yjsgName=newgrid6|modNames=commevousvoulez'); ?>
<?php yjsg_print_grid_area('yjsgName=newgrid7|modNames=commevousvoulez'); ?>
Vous devez d'abord décider où ajouter votre nouvelle position de grille. Ouvrir index.php dans le template et essayez de trouver un endroit approprié pour votre nouvelle grille.
Par exemple, sous le menu principal.

Veuillez ajouter l'extrait de code suivant dans l'espace précédemment déterminé:
balise:
<?php yjsg_print_grid_area('yjsgName=newgrid1|modNames=nouvelle_position',true); ?>
Voir les informations sur la fonction d'impression Grid pour les options de fonction supplémentaires.
Sous cette ligne dans templateDetails.xml :
balise:
<position>user25</position>
Ajoutez cet extrait de code XML:
balise:
<position>nouvelle_position1</position>
<position>nouvelle_position2</position>
<position>nouvelle_position3</position>
<position>nouvelle_position4</position>
<position>nouvelle_position5</position>

Sous cette ligne dans template-settings.xml :
balise:
<fields name="params" addfieldpath="/plugins/system/yjsg/elements">
Ajouter cet extrait xml:
balise:
<fieldset name="YJSG_LAYOUT_LABEL">
<field name="yjsg_newgrid1_width" type="yjsgmultitext" default="20|20|20|20|20" labels="nouvelle_position1|nouvelle_position2|nouvelle_position3|nouvelle_position4|nouvelle_position5" customchrome="YJsgxhtml|YJsgxhtml|YJsgxhtml|YJsgxhtml|YJsgxhtml" items="5" size="2" class="serialize_multiple" />
</fieldset>
name: variable qui contient vos informations de nouvelle grille.
default: un tableau de largeurs de modules par défaut.
labels: descriptions des noms des positions visibles dans le gestionnaire de template.
customchrome: chrome de module par défaut. Cela peut être YJsgxhtml,
YJsground, YJsgblank, YJsgtabs, YJsgaccordion, YJsgslides.
items: nombre de modules dans la grille.
size: taille de largeur de l'inputbox.
class: classe de grille par défaut dans le template admin. Ne le changez pas.
Veuillez noter que le nom de la variable name="yjsg_newgrid1_width" doit correspondre à l'attribut de fonction de grille yjsgName=newgrid1
donné plus haut.
Une fois tout cela terminé, votre nouvelle grille sera visible dans le gestionnaire de template sous l'onglet Mise en page. Notez également que la position de la grille dans index.php sera répliquée dans votre onglet Mise en page. Comme vous pouvez le voir dans notre exemple, la nouvelle grille est positionnée sous le menu principal.

Accédez au gestionnaire du module désiré et publiez le module dans votre nouvelle position de module.
Résultat:

Ouvrez la fichier racine/templates/nom_template/template-settings.xml f et trouvez la variable nommée yjsg_get_styles
<fieldname="yjsg_get_styles"type="yjsglist"default="blue|40b1e2"label="YJSG_COLOR_LABEL"description="YJSG_COLOR_DESC"yjsgstyles="blue==40b1e2">
<optionvalue="blue|40b1e2">Blue</option>
</field>
Les attributs du champ nommé yjsg_get_styles sont importants et contrôlent le stylewitcher ainsi que le logo, le sélecteur de couleur et les paramètres de style dans le gestionnaire de templates. Les valeurs dans les attributs sont séparées par | ou == et vous devez leur prêter une attention particulière.
name: variable qui contient des informations de style.
type: type d'élément yjsglist.
default: style de couleur sélectionnée par défaut et sa couleur de lien.
label: libellé de l'élément pour le gestionnaire de template
description: description de l'élément pour le gestionnaire de templates.
yjsgstyles: all available template styles.
option value: option style name and its default link color.
Nous allons maintenant ajouter un nouveau nom de style vert aux noms de style existants afin donc notre nom de champ yjsg_get_styles va être modifié ainsi;
<field name="yjsg_get_styles" type="yjsglist" default="blue|40b1e2" label="YJSG_COLOR_LABEL" description="YJSG_COLOR_DESC" yjsgstyles="blue==40b1e2|green==748500">
<option value="blue|40b1e2">Bleu</option>
<option value="green|748500">Vert</option>
</field>
Vous noterez que le nom de l'option n'est pas necesairement le nom du style ( traduction en françasi par exemple.
Le nouveau nom de style de template doit maintenant être visible dans le gestionnaire de templates.

Rendez-vous au dossier d'images racine/templates/nom_template/images copiez le dossier blue et renommez le en green.

Puisque nous avons déjà des feuilles de style pour chaque nom de style, allez à site_racine/templates/template_nom/css copiez le fichier blue.css et renommez le en green.css.

Ouvrez green.css et remplacez toutes les instances de images/blue en images/green et toutes les instances du code couleur 40b1e2 en 748500.
Notez que certaines propriétés CSS comme a:hover ou des images d'arrière-plan spécifiques doivent également être modifiées.
Nous n'allons pas entrer dans les détails pour ceux-ci, mais il vous suffit de noter que vous pourriez avoir besoin de les modifier afin d'adapter votre nouveau style de template.
Maintenant, allez au gestionnaire de templates et définissez Green comme style par défaut. Appuyez sur Sauver et allez visitez votre site, les changements ont pris effet:

Comme vous pouvez le voir, il ne vous reste plus qu'à changer votre logo pour l'adapter à votre nouveau style. Veuillez ouvrir logo.psd et changer le code de couleur.
Maintenant remplacer le fichier existant nommé logo.png dans le dossier site_racine/templates/template_nom/images/green par le nouveau logo.
Accédez à votre page d'accueil et actualisez. Votre nouveau logo doit être visible.

Si le processus de changement de logo est trop compliqué, vous pouvez envoyer un nouveau fichier de logo par le gestionnaire de templates. Allez dans l'onglet nommé mise en page et téléchargez ou sélectionnez le fichier logo de votre serveur:
