Article non affiché dans catégorie.php
Bonjour,
Pour construire un menu j'utilise ce code dans mon template :
Ce code me liste les catégories actives et les articles qui y sont attachés. Lorsque je clic sur une catégorie j'arrive sur la page categorie.php qui est sensé me lister les articles contenue celle-ci, sauf que dans ce cas non. Le premier article n'est plus affiché. Pour confirmer mes doutes j'ai remis le thème par défaut et magie le premier article est de nouveau listé.
Pour construire un menu j'utilise ce code dans mon template :
[== PHP ==]
<nav class="grid nav">
<div class="col sml-hide sml-centered med-10 med-show med-centered lrg-10 lrg-show lrg-centered">
<ul class="menu expanded">
<?php
$status = $plxShow->catId()=='home'?"active":"noactive";
echo ' <li class="'.$status.'"><a href="'.$plxMotor->urlRewrite().'" title="Accueil">Accueil</a></li>';
foreach($plxMotor->aCats as $k=>$v) {
if($v['articles'] > 0 AND $v['active'] == '1' AND $v['menu'] == 'oui') {
$cat_id = intval($k);
$status = $plxShow->catId()==$cat_id?"active":"noactive";
echo '<li id="cat-'.$cat_id.'" class="'.$status.'"><a href="'.$plxMotor->urlRewrite('?categorie'.$cat_id.'/'.$v['url']).'" title="'.$v['name'].'">'.$v['name'].'</a>';
echo '<ul>';
$motif = '/^[0-9]{4}.((?:[0-9]|home|,)*(?:'.$k.')(?:[0-9]|home|,)*).[0-9]{3}.[0-9]{12}.[a-z0-9-]+.xml$/';
$sort = 'rsort';
$max = 9999;
$plxGlob_arts = clone $plxMotor->plxGlob_arts;
if($aFiles = $plxGlob_arts->query($motif, 'art', $sort, 0, $max, 'before')) {
foreach ($aFiles as $v) {
$art = $plxMotor->parseArticle(PLX_ROOT.$plxMotor->aConf['racine_articles'].$v);
$url = $plxMotor->urlRewrite('?article'.intval($art['numero']).'/'.$art['url']);
$art_id = intval($art['numero']);
$status = $plxShow->artId()==$art_id?"active":"noactive";
echo '<li id="'.$art_id.'" class="text-left '.$status.'"><a href="'.$url.'" title="'.$art['title'].'">'.$art['title'].'</a></li>';
}
}
echo '</ul>';
echo '</li>';
}
}
?>
</ul>
</div>
</nav>
Ce code me liste les catégories actives et les articles qui y sont attachés. Lorsque je clic sur une catégorie j'arrive sur la page categorie.php qui est sensé me lister les articles contenue celle-ci, sauf que dans ce cas non. Le premier article n'est plus affiché. Pour confirmer mes doutes j'ai remis le thème par défaut et magie le premier article est de nouveau listé.
J'ai un string de l'array
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Désolé pour le temps de réponse.
Je vois pas trop à quoi va te servir la sortie html mais pourquoi pas. C'est la version html depuis l'url 4.0/index.php?categorie1/la-societe qui correspond à une catégorie.
Sur ma page categorie.php j'ai ajouté un print_r($plxShow) après la génération de mon menu. Je recherche plxRecord_arts et j'ai bien un enregistrement qui correspond à l'article qui ne s'affiche pas.
J'ai un string de l'array
Consultant PluXml
Ancien responsable et développeur de PluXml (2010 à 2018)
Jerry Wham : j'utilise le même code pour la partie php que celui par défaut, c'est juste cosmétique et adapté pour PluCss
J'ai un string de l'array
J'ai enfin trouvé un moment pour me remettre sur ce problème. Donc c'est à cause de la génération de mon menu de navigation qui utilise ce code
Mais pour le moment je n'ai pas trouvé la provenance du problème dans ce code.
J'ai un string de l'array
J'ai un string de l'array
une solution serait peut-être de faire le teste uniquement en mode article donc remplacer la ligne "$status = $plxShow->artId() ... " par ça :
Merci.
J'ai un string de l'array