[suggestion] format d'affichage pour artCat
danielsan
Member
hello,
j'utilise un format d'affichage pour la méthode artCat qui affiche la liste des catégories l'article sous forme de lien
dans la boucle du template, je l'utilise comme ceci :
qu'en pensez-vous ?
j'utilise un format d'affichage pour la méthode artCat qui affiche la liste des catégories l'article sous forme de lien
[== PHP ==]
/**
* Méthode qui affiche la liste des catégories l'article sous forme de lien
* ou la chaîne de caractère 'Non classé' si la catégorie
* de l'article n'existe pas
*
* @param separator caractère de séparation entre les catégories affichées
* @return stdout
* @scope home,categorie,article,tags,archives
* @author Anthony GUÉRIN, Florent MONTHEL, Stephane F
**/
public function artCat($format='<a class="#cat_status" href="#cat_url" title="#cat_name">#cat_name</a>', $separator=', ') {
$cats = array();
# Initialisation de notre variable interne
$catIds = $this->artActiveCatIds();
foreach ($catIds as $idx => $catId) {
# On verifie que la categorie n'est pas "home"
if($catId != 'home') {
# On va verifier que la categorie existe
if(isset($this->plxMotor->aCats[ $catId ])) {
# On recupere les infos de la categorie
$cat_name = plxUtils::strCheck($this->plxMotor->aCats[ $catId ]['name']);
$name = plxUtils::strCheck($this->plxMotor->aCats[ $catId ]['name']);
$url = $this->plxMotor->aCats[ $catId ]['url'];
if(isset($this->plxMotor->aCats[ $this->plxMotor->cible ]['url']))
$active = $this->plxMotor->aCats[ $this->plxMotor->cible ]['url']==$url?"active":"noactive";
else
$active = "noactive";
# On effectue l'affichage
// $cats[] = '<a class="'.$active.'" href="'.$this->plxMotor->urlRewrite('?categorie'.intval($catId).'/'.$url).'" title="'.$name.'">'.$name.'</a>';
$name = str_replace('#cat_url',$this->plxMotor->urlRewrite('?categorie'.intval($catId).'/'.$url),$format);
$name = str_replace('#cat_item',$url,$name);
$name = str_replace('#cat_name',plxUtils::strCheck($cat_name),$name);
$name = str_replace('#cat_status',$active, $name);
$cats[] = $name;
} else { # La categorie n'existe pas
$cats[] = L_UNCLASSIFIED;
}
} else { # Categorie "home"
$name = str_replace('#cat_url',$this->plxMotor->urlRewrite(),$format);
$name = str_replace('#cat_item',$url,$name);
$name = str_replace('#cat_name',L_HOMEPAGE,$name);
$name = str_replace('#cat_status',"active", $name);
$cats[] = $name;
// $cats[] = '<a class="active" href="'.$this->plxMotor->urlRewrite().'" title="'.L_HOMEPAGE.'">'.L_HOMEPAGE.'</a>';
}
}
echo implode($separator, $cats);
}
dans la boucle du template, je l'utilise comme ceci :
[== PHP ==]
<h3><?php $plxShow->lang('CLASSIFIED_IN') ?></h3>
<ul class="menu expanded">
<?php $plxShow->artCat('<li><a class="button #cat_status" href="#cat_url" title="Voir tous les articles #cat_name">#cat_name</a></li>','') ?>
</ul>
qu'en pensez-vous ?
Connectez-vous ou Inscrivez-vous pour répondre.