[4.3.1]Listage des articles dans une catégorie "cachée/privé"

FrédéricFrédéric Member
février 2010 modifié dans Discussions générales
Bonsoir,

Je me suis rendus compte que dans la sidebar avec la fonction qui permet de lister les derniers articles
<?php $plxShow->lastArtList('<li><a href="#art_url" class="#art_status" title="#art_title">#art_title</a></li>'); ?>
,celle-ci m'afficher aussi les articles des catégories que l'on ne désire pas afficher.

Est ce normal/volontaire ?

Comment contourner le listage de ces articles d'une catégorie que l'on a "caché" ?

Merci

Réponses

  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour Fred.

    Dans la gestion des catégories, le fait de positionner le champ ordre à "0" permet de ne pas afficher la catégorie dans le menu. Et pas de désactiver la catégorie

    Néanmoins si tu veux ne pas voir les articles d'une catégories avec une n° d'ordre = 0 dans la fonction lastArtList tu peux faire ces modifs:

    1) Édite le fichier core/lib/class.plx.show.php
    2) Dans la fonction lastArtList, remplace les lignes suivantes
    # Génération de notre motif
    		if(empty($cat_id))
    			$motif = '/^[0-9]{4}.[0-9]{3}.[0-9]{12}.[a-z0-9-]+.xml$/';
    
    par
    # Génération de notre motif
    		if(empty($cat_id)) {
    			# on fitre sur les catégories actives
    			$_aCats = array();
    			foreach($this->plxMotor->aCats as $k => $v) {
    				if($v['menu']!='non') $_aCats[] = $k;
    			}
    			$motif = '/^[0-9]{4}.('.implode("|", $_aCats).').[0-9]{12}.[a-z0-9-]+.xml$/';
    		}
    

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Mille merci Stéphane de ta réactivité, je test ça pour te tenir au courant.

    Et oui je pensé "logique" d'avoir la même possibilité que les pages statiques avec l'option active (oui/non) pour rendre "privé" certaine catégories "privé".
  • StéphaneStéphane Member, Former PluXml Project Manager
    A noter que même si tu fais cette modif les articles postés dans une catégorie avec une n° d'ordre à 0 apparaitront sur ton site. Le menu de la catégorie dans la sidebar ne sera pas visible et les articles ne seront pas listés par lastArtList.

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • L'option inactive/active sur les catégories n'est pas possible pour le moment (problématique technique)
  • FrédéricFrédéric Member
    février 2010 modifié
    Super merci, ca fonctionne à merveille, c'est juste ce qu'il me faut.

    Pour l'option à voir dans les features ;)

    Ps: Manque un petit bouton résolus pour suivre les sujet ;)
  • FrédéricFrédéric Member
    février 2010 modifié
    Et encore une chose, y a t'il un moyen de lister les articles complet d'une catégorie précise dans une page statique ?
    J'ai bien trouvé "Lister tous les articles d'une catégorie dans une page statique" dans le wiki mais cela liste toutes les catégories et articles.
    Donc comment spécifier la catégorie svp.
    Merci
  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour fred

    Remplace la ligne
    $aFiles = $plxGlob_arts->query('/[0-9]{4}.([0-9]{3}).[0-9]{12}.[a-z0-9-]+.xml$/','sitemap','rsort');
    
    par
    $aFiles = $plxGlob_arts->query('/[0-9]{4}.(CAT_ID).[0-9]{12}.[a-z0-9-]+.xml$/','sitemap','rsort');
    
    où CAT_ID correspond à l'id de la catégorie souhaitée

    tu peux spécifier plusieurs catégories de cette façon

    CAT_ID1|CAT_ID2

    Exemple
    $aFiles = $plxGlob_arts->query('/[0-9]{4}.(001|002).[0-9]{12}.[a-z0-9-]+.xml$/','sitemap','rsort');
    

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • FrédéricFrédéric Member
    février 2010 modifié
    A Super le fait de pouvoir sélectionner d'autre catégories désirées, merci.

    Du coup sur le wiki pour les anciennes version de pluxml ce n'étais pas possible çà ?

    Cette modification est valable pour les v 4.3 et 4.3.1 ?

    Et une petite chose encore, est il possible d'extraire la boucle complète des articles avec la pagination ou pas ?

    Car en fait je souhaite faire une partie privé du blog et pour ca je pense que c'est uniquement possible dans une page statique pour y ajouter la vérification de session sans toucher au core de pluxml.

    Donc en gros c'est de pouvoir faire ce que fais déjà pluxml en mode catégorie dans une page statique.

    Ps: mise à jour de wiki.
  • Pour affiche le contenu en plus, modifié:
    			echo "<ul>";
    			# On boucle sur les articles de la categories
    			while(list($null, $art) = each($v)) {
    		
    				$art_num = intval($art['numero']);
    				$art_url = plxUtils::strCheck(($art['url']));
    				$art_title = plxUtils::strCheck(($art['title']));
    				$art_date = plxDate::dateIsoToHum($art['date'], $format_date);
                               
    				echo '<li>'.$art_date.': <a href="'.$plxShow->plxMotor->aConf['racine'].'?article'.$art_num.'/'.$art_url.'">'.$art_title.'</a></li>'; 
    			}
    			echo "</ul>";
    
    Par:

    			echo "<ul>";
    			# On boucle sur les articles de la categories
    			while(list($null, $art) = each($v)) {
    		
    				$art_num = intval($art['numero']);
    				$art_url = plxUtils::strCheck(($art['url']));
    				$art_title = plxUtils::strCheck(($art['title']));
    				$art_date = plxDate::dateIsoToHum($art['date'], $format_date);
                                    $art_content = plxUtils::strCheck(($art['content']));
                               
    				echo '<li>'.$art_date.': <a href="'.$plxShow->plxMotor->aConf['racine'].'?article'.$art_num.'/'.$art_url.'">'.$art_title.'</a><br />'.$art_content.'</li>'; 
    			}
    			echo "</ul>";
    
  • StéphaneStéphane Member, Former PluXml Project Manager
    Oui c'est la modif à faire pour avoir le contenu de l'article.
    Pour la pagination ça devrait être possible, mais ça commence à se compliquer et surtout à allonger le code.
    En ce qui me concerne je n'ai pas le temps de travailler dessus.

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Par contre les lien ne sont pas parsé comme çà, est je oublié quelque chose ?

    J'ai en faite inséré un document depuis le gestionnaire de media et il me l'affiche en code html au lieu de justement mettre un lien :(
  • Ci joint un screen plus explicatif:

    mini_100208042058874731.png
  • StéphaneStéphane Member, Former PluXml Project Manager
    Remplace la ligne
    $art_content = plxUtils::strCheck(($art['content']));
    
    par
    $art_content = $art['content'];
    

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Merci Stéphane c'est bien ça :)
  • Bon je déterre ce sujet car je ne comprends pas trop la logique que quand on masque une catégorie que les articles faisant partie de cette catégorie soit listé dans les derniers articles en sidebar.

    Si je sélectionne 'non active' et que je liste les derniers articles dans une page statique, j'ai bien la boucle qui s'affiche.
    Par contre si je clique sur le lien de l'article seul on tombe sur une 404 (template erreur.php).

    Qu'en pensez-vous ?
Connectez-vous ou Inscrivez-vous pour répondre.