decad7
25 Jan 2005, 17:24
Bonjour,
tout est dans le titre....
j'aimerais faire en sorte que le modele du produit n'apparaissent pas dans le breadcrumb (l'arbre de navigation) et qu'il s'arrette donc sur la derniere catégorie du produit selectioné.
j'ai regardé un peu la classe, mais je ne vois pas ou l'on pourrait faire se genre de manipulation.
Existe il une solution simple et rapide ?
Merci encore pour tout
++
fab
manmachine
25 Jan 2005, 17:40
c'est dans application_top que ca ce passe :
| CODE |
// add the products model to the breadcrumb trail if (isset($HTTP_GET_VARS['products_id'])) { $model_query = tep_db_query("select products_model from " . TABLE_PRODUCTS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'"); if (tep_db_num_rows($model_query)) { $model = tep_db_fetch_array($model_query); $breadcrumb->add($model['products_model'], tep_href_link(FILENAME_PRODUCT_INFO, 'cPath=' . $cPath . '&products_id=' . $HTTP_GET_VARS['products_id'])); } }
|
tu as juste a commenter cette portion de code ...
decad7
25 Jan 2005, 18:51
Ok super c'est exactement cela que je souhaitais faire...
parcontre j'ai un nouveau problème.
J'utilise la classe Breadcrumb pour 2 fonctions.
et voila mon problème.
il s'agit d'un problème de class pour appliquer les couleurs des liens.
pour l'une des utilisations, les liens doivent etre en blanc (car sur fond foncé).
ensuite pour la deuxieme utilisation de la classe, les liens doivents etre les même que ceux utilisé sur tout le site. donc la classe A standart du stylesheet.
Donc pour la deuxieme utilisation c'est ok, les liens de mon arbre ont la bonne couleurs, mais pour ma premiere utilisation, je n'arrive pas a changer la couleurs des liens.
j'ai tout essayé avec des <span> des <font> etc...
comme puis je faire donc pour utiliser la classe breadcrumb et choisir sa couleurs ou je désire.
Encore merci
++
fab
manmachine
25 Jan 2005, 19:16
on pourrais faire un truc dans ce genre dans la fonction trail() de la classe .
| CODE |
function trail($separator = ' - ') { $trail_string = ''; for ($i=0, $n=sizeof($this->_trail); $i<$n; $i++) { if (isset($this->_trail[$i]['link']) && tep_not_null($this->_trail[$i]['link'])) { if(strstr($_SERVER['PHP_SELF'],'product_info.php')){ $class = 'headerNavigation'; } else if(strstr($_SERVER['PHP_SELF'],'index.php')) { $class = 'main'; } else { $class = 'uneclasse'; }
$trail_string .= '<a href="' . $this->_trail[$i]['link'] . '" class="'.$class.'">' . $this->_trail[$i]['title'] . '</a>'; } else { $trail_string .= $this->_trail[$i]['title']; }
if (($i+1) < $n) $trail_string .= $separator; }
return $trail_string; }
|
ici on conditionne la classe suivant la page en cours .
cette methode est simple . sinon on peut aussi le faire en ajoutant un argument a la fonction .
decad7
25 Jan 2005, 20:00
Oui effectivement j'ai rajouté un paramettre a la fonction, est j'ai fait les modifications a chaque endroit ou l'arbre est appellé sur le site.
voici la fonction que j'ai modifier de la classe breadcrumb.
| CODE |
function trail($class,$separator = ' - ') { $trail_string = '';
for ($i=0, $n=sizeof($this->_trail); $i<$n; $i++) { if (isset($this->_trail[$i]['link']) && tep_not_null($this->_trail[$i]['link'])) { $trail_string .= '<a class="' . $class . '" href="' . $this->_trail[$i]['link'] . '" >' . $this->_trail[$i]['title'] . '</a>'; } else { $trail_string .= $this->_trail[$i]['title']; } if (($i+1) < $n) $trail_string .= $separator; }
return $trail_string; }
|
Avec ce changement on controle le separateur et la mise en forme de la classe breadcrumb.
Encore merci
++
fab
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez
cliquer ici.