[Résolu]Javascript spécifiques pour une page

Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
#1
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 1.11.4
#~ Url du site :
#~ Hébergeur / Soft :
#~ Informations Système :
#~ Cms Version: 1.11.4
#~ Installed Modules:
#~ CMSMailer: 5.2.1
#~ CMSPrinting: 1.0.3
#~ FileManager: 1.4.3
#~ MenuManager: 1.8.4
#~ MicroTiny: 1.2.5
#~ ModuleManager: 1.5.5
#~ News: 2.12.10
#~ Search: 1.7.7
#~ ThemeManager: 1.1.7
#~ babel: 0.4.1
#~ Gallery: 1.6
#~ Showtime: 3.2
#~ Config Information:
#~ php_memory_limit:
#~ process_whole_template:
#~ output_compression:
#~ max_upload_size: 64000000
#~ url_rewriting: mod_rewrite
#~ page_extension:
#~ query_var: page
#~ image_manipulation_prog: GD
#~ auto_alias_content: true
#~ locale: fr_FR.utf-8
#~ default_encoding: utf-8
#~ admin_encoding: utf-8
#~ set_names: true
#~ Php Information:
#~ phpversion: 5.3.19
#~ md5_function: On (Vrai)
#~ gd_version: 2
#~ tempnam_function: On (Vrai)
#~ magic_quotes_runtime: Off (Faux)
#~ E_STRICT: 0
#~ E_DEPRECATED: 0
#~ memory_limit: 128M
#~ max_execution_time: 120
#~ output_buffering: On
#~ safe_mode: Off (Faux)
#~ file_uploads: On (Vrai)
#~ post_max_size: 64M
#~ upload_max_filesize: 64M
#~ session_save_path: /tmp (1777)
#~ session_use_cookies: On (Vrai)
#~ xml_function: On (Vrai)
#~ xmlreader_class: On (Vrai)
#~ Server Information:
#~ Server Api: cgi-fcgi
#~ Server Db Type: MySQL (mysql)
#~ Server Db Version: 5.1.68
#~ Server Db Grants: Trouvé un privilège "GRANT ALL" qui semble être adapté
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~



Bonjour,

Dans les pages, on peut mettre (dans l'onglet option) des Métadonnées spécifiques pour la page ou des Balises Smarty spécifiques pour la page.

Je cherche un moyen de mettre un javascript spécifique pour la page.
Ceci pour ne pas avoir à multiplier les gabarits.

Par avance merci !
#1
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 1.11.4
#~ Url du site :
#~ Hébergeur / Soft :
#~ Informations Système :
#~ Cms Version: 1.11.4
#~ Installed Modules:
#~ CMSMailer: 5.2.1
#~ CMSPrinting: 1.0.3
#~ FileManager: 1.4.3
#~ MenuManager: 1.8.4
#~ MicroTiny: 1.2.5
#~ ModuleManager: 1.5.5
#~ News: 2.12.10
#~ Search: 1.7.7
#~ ThemeManager: 1.1.7
#~ babel: 0.4.1
#~ Gallery: 1.6
#~ Showtime: 3.2
#~ Config Information:
#~ php_memory_limit:
#~ process_whole_template:
#~ output_compression:
#~ max_upload_size: 64000000
#~ url_rewriting: mod_rewrite
#~ page_extension:
#~ query_var: page
#~ image_manipulation_prog: GD
#~ auto_alias_content: true
#~ locale: fr_FR.utf-8
#~ default_encoding: utf-8
#~ admin_encoding: utf-8
#~ set_names: true
#~ Php Information:
#~ phpversion: 5.3.19
#~ md5_function: On (Vrai)
#~ gd_version: 2
#~ tempnam_function: On (Vrai)
#~ magic_quotes_runtime: Off (Faux)
#~ E_STRICT: 0
#~ E_DEPRECATED: 0
#~ memory_limit: 128M
#~ max_execution_time: 120
#~ output_buffering: On
#~ safe_mode: Off (Faux)
#~ file_uploads: On (Vrai)
#~ post_max_size: 64M
#~ upload_max_filesize: 64M
#~ session_save_path: /tmp (1777)
#~ session_use_cookies: On (Vrai)
#~ xml_function: On (Vrai)
#~ xmlreader_class: On (Vrai)
#~ Server Information:
#~ Server Api: cgi-fcgi
#~ Server Db Type: MySQL (mysql)
#~ Server Db Version: 5.1.68
#~ Server Db Grants: Trouvé un privilège "GRANT ALL" qui semble être adapté
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~



Bonjour,

Dans les pages, on peut mettre (dans l'onglet option) des Métadonnées spécifiques pour la page ou des Balises Smarty spécifiques pour la page.

Je cherche un moyen de mettre un javascript spécifique pour la page.
Ceci pour ne pas avoir à multiplier les gabarits.

Par avance merci !
#2
dans certain cas de figure il peut être intéressant de laisser une condition dans ton gabarit :

{if aliasDeMaPage='toto'}{globalContent name='jsSupplementaire'}{/if}

et créer un bloc de contenu global avec ton JS

l'avantage c'est que si tu dois intégrer ce JS dans les pages "toto" et "tata", il te reste simplement à modifier la condition.

Autre possibilité : jongler avec les Métadonnées spécifiques des pages pour assigner une variable à smarty

assign('BesoinJavaScript', true);

et dans ton gabarit tester la valeur et son existence

{if $BesoinJavaScript != null && $BesoinJavaScript}{globalContent name='jsSupplementaire'}{/if}

je te donne l'idée, pas le code donc ne copie pas mes exemples tels quel surtout Smile
#2
dans certain cas de figure il peut être intéressant de laisser une condition dans ton gabarit :

{if aliasDeMaPage='toto'}{globalContent name='jsSupplementaire'}{/if}

et créer un bloc de contenu global avec ton JS

l'avantage c'est que si tu dois intégrer ce JS dans les pages "toto" et "tata", il te reste simplement à modifier la condition.

Autre possibilité : jongler avec les Métadonnées spécifiques des pages pour assigner une variable à smarty

assign('BesoinJavaScript', true);

et dans ton gabarit tester la valeur et son existence

{if $BesoinJavaScript != null && $BesoinJavaScript}{globalContent name='jsSupplementaire'}{/if}

je te donne l'idée, pas le code donc ne copie pas mes exemples tels quel surtout Smile
#3
Je vais essayer la première solution. Je pourrais mettre le js dans un block de contenu mais j'ai peur que le client n'y touche. Un globalContent c'est mieux. je laisse ouvert pour la journée, je mettrais résolu demain au cas où j'aurais des précision.

Merci !
#3
Je vais essayer la première solution. Je pourrais mettre le js dans un block de contenu mais j'ai peur que le client n'y touche. Un globalContent c'est mieux. je laisse ouvert pour la journée, je mettrais résolu demain au cas où j'aurais des précision.

Merci !
#4
J'ai mis ça dans le gabarit :

{if $page_alias eq "accueil"}
{global_content name='script-accueil'}
{/if}

{if $page_alias eq "contact"}
{global_content name='script-contact'}
{/if}

Ça marche mais il ne faut pas avoir trop de page.
#4
J'ai mis ça dans le gabarit :

{if $page_alias eq "accueil"}
{global_content name='script-accueil'}
{/if}

{if $page_alias eq "contact"}
{global_content name='script-contact'}
{/if}

Ça marche mais il ne faut pas avoir trop de page.


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)