Jump to content

RESOLU: hookHeader n'ajoute pas le css inline dans <head> </head>


Recommended Posts

Bonjour à tous,

 

Je m'arrache les cheveux depuis pas mal d'heures car les étoiles du module gratuit de notation des produits, ne s'affichent pas sur ma page produit : http://www.prestasho...roduct%20rating

 

Le module s'affiche correctement, à l'exception des étoiles ; ces étoiles sont normalement visibles grâce à des instructions de style css insérées dans la section <head>.

En fait, le fichier principal du module contient la fonction suivante, qui permet d'ajouter le code suivant dans la section <head> </head> :

 

function hookHeader($params)
{
 global $smarty;
 $pathinfo = pathinfo(__FILE__);
 $page_name = basename($_SERVER['PHP_SELF'], '.'.$pathinfo['extension']);
 $page_name = (preg_match('/^[0-9]/', $page_name)) ? 'page_'.$page_name : $page_name;
 if ($page_name == 'product')
 {
  Tools::addJS(($this->_path).'rating/js/behavior.js');
  Tools::addJS(($this->_path).'rating/js/rating.js');
  Tools::addCSS(($this->_path).'rating/css/rating.css', 'all');
 }

 $smarty->assign(array(
  'rating_show_category' => Configuration::get('RATING_SHOW_CATEGORY'),
  'bdcolor' => Configuration::get('RATING_BDCL'),
  'bgcolor' => Configuration::get('RATING_BGCL'),
  'star' => Configuration::get('RATING_STAR')
 ));

 return $this->display(__FILE__, 'productrating-header.tpl');
}

 

Le fichier productrating-header.tpl contient du code de type css inline "dynamique":

{if $page_name == 'product'}
<!-- Module Rating -->
<style type="text/css">
 .unit-rating, .unit-rating li a:hover, .unit-rating li.current-rating {ldelim}
 background-image: url('{$content_dir}modules/productrating/rating/stars/{$star}')
 {rdelim}

 .ratingblock {ldelim}
 {if $bgcolor}
 background-color: #{$bgcolor};
 {/if}
 {if $bdcolor}
 border: 1px #{$bdcolor} solid;
 {/if}
 {rdelim}
</style>
<!-- Module Rating -->
{/if}

 

A priori, le problème est lié à mon thème (customisé à partir du thème standard) car en activant le thème prestashop par défaut les étoiles apparaissent (le code css est bien ajouté dans la section <head>.

 

Si quelqu'un veut bien me mettre sur la piste, car là, je ne sais plus où regarder, et j'ai bien peur d'être chauve plus vite que prévu ;)

 

Je peux aussi envoyer une URL par message privé à ceux qui auront la bonté de vouloir jeter un oeil...

 

Merci de m'avoir lu

 

D

 

PS: Si ce sujet a plus sa place dans la section "Développement" que celle dédiée à l'Intégration, je compte sur les modérateurs pour le déplacer...

Link to comment
Share on other sites

J'ai trouvé le problème

C'est tout bête, j'avais oublié ma tentative d'overrider les fichier tpl du module ( et comme il y avait des chemins relatifs vers les fichiers et non absolus…)

 

Espérant que ce post aidera un étourdi comme moi à l'avenir ! :unsure:

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...