Jump to content

Ajouter un fichier js


Recommended Posts

Bonjour,

 

je suis actuellement en train d'intégrer un thème pour un client, et j'ai donc besoin d'ajouter un fichier js et des fichiers css pour le module blockpermanentlinks

 

J'ai donc :

 

themes/mon_theme/modules/blockpermanentlinks

 

Dans lequel j'ajoute

 

<?php
public function hookHeader($params)
{
$this->context->controller->addJS($this->_path).'js/mon_fichier_js.js');
$this->context->controller->addCSS($this->_path).'css/mon_fichier_css.css');
}
?>

 

Pourtant rien ne se charge. J'ai essayé tout un tas d'autres chose mais sans succées. Les fichiers ne se chargent pas. Ai-je mal compris quelque chose ?

 

Merci pour vos futurs conseils ou remontrances.

Link to comment
Share on other sites

Pourquoi tu ajoutes ca dans themes/mon_theme/modules/blockpermanentlinks ?

Dans ce dossier il ne doit y avoir que des fichiers template, et ta fonction hookHeader doit être dans le .php qui est dans /modules/blockpermantentlinks.

 

SI c'est une erreur :

Le module est bien greffé dans le hook header (en plus du hook top) ?

Il y a un deuxième paramètre pour les méthode addCSS et Js (bien que je ne sache pas à quoi il correspond. Et les serveurs de presta étant encore down, je n'ai rien sous la main pour chercher x) ) :

$this->context->controller->addCSS(($this->_path).'fichiercss.css', 'all');

Seb.

Edited by Szed (see edit history)
Link to comment
Share on other sites

Bonjour,

 

merci pour ta réponse.

Je pensais qu'il fallait tout surcharger, y compris le fichier php qui fait appel aux fichiers js et css pour éviter d'avoir des problèmes lors de prochaine mise à jour.

 

Je vais donc suivre ton conseil. De plus je viens de voir également, que je dois crée un dossier modules/blockpermanentlinks dans mon dossier css si je veux que mon css soit pris en compte. De même pour les fichiers js.

 

Merci pour ta réponse.

 

ps : a quoi sert ce deuxième paramètre "all" ?

Link to comment
Share on other sites

ce 2eme paramètre est "css_media_type", il est utile si tu veux un css spécifique si tu veux imprimer la page par exemple.

 

Comme le dit Szed c'est dans le module qu'il faut ajouter ce code et non dans un tpl, par défaut c'est all donc tu n'est pas obligé de le spécifier.

Link to comment
Share on other sites

Yep, je vous rassure, je n'avais pas placé l'appel dans les fichiers tpl, je vois pas bien comment s'aurait pu fonctionner :P

J'avais simplement importer le fichier php avec les tpl dans mon thème.

 

Il s'agit donc d'un manque de connaissance de ma part. Ou plutôt j'avais mélanger la surcharge sur les controller et celle des view.

 

Merci pour votre réactivité et votre aide.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...