Tri par auteur

JulienCognitoJulienCognito Member
octobre 2013 modifié dans Entraide
Bonjour à tous;

Quelques années que j'utilise Pluxml comme back-office pour des sites simili-statics de copains, merci à tous pour ce cms qui me va parfaitement, ses plugins & toutes les discussions croisées ici qui m'ont bien aidé donc.

Mais je viens aujourd'hui avec une question, bien sûr :/

Pour un blog scolaire (école primaire), j'ai crée un rédacteur par classe, les instits en éditeurs & moi en admin.
De manière à orienter les visiteurs (parents) directement sur la classe de leurs enfants, la home n'est qu'un article "page d'accueil" + un menu bien massif.
Pour cette orientation, j'ai été obligé de créer une catégorie par classe pour l'appeler ainsi:
[== HTML ==]
<li><a href="<?php $var = $plxShow->catUrl(5);echo $var;?>"><h3>CE2</h3><p>Mme Machin</p></a></li>

Mais c'est là que je m'ennuie: autant le profil rédacteur & l'option dossier image par rédac me garantie qu'une classe ne va pas modifier les articles des autres, autant ils ils ont accès à toutes les catégories en rédaction...

J'ai donc cherché dans 2 directions:

a) limiter l’accès aux catégorie pour chaque rédac > rien trouvé.

b) ne pas utiliser les catégorie mais les auteurs > rien dans plxshow :( > vu le plugin[topic=2745] MyAllArchive[/topic] et sa fonction tri par auteur mais je ne vois pas comment l'intégrer, il me faudrait en fait une page remplaçant categorie.php où le tri serait l'auteur plutôt que la cat.

Merci d'avance pour vos idées,

Julien

Réponses

  • JulienCognitoJulienCognito Member
    octobre 2013 modifié
    Je ne m'impatiente pas, hein, je ne sais d'ailleurs pas si c'est possible.

    Mais je cherche tjs de mon côté;
    Mes pistes: créer une page statique par auteur, sur un gabarit genre catégorie, et y appeler, grâce à une éventuelle commande issue de myAllArchive, la liste des billets rédigés par 1 auteur. Et sur ma home, lister ces pages statiques.
    Mais j'ai beau examiner les fichiers du plugin plxMyAllArchive (notamment class.plx.archives.php), je ne trouve rien... ma compréhension du php est proche du zero, faut dire.

    Bref, un coup d'oeil de votre part pour un pas de géant de mon côté?
    Désolé si c'est un Up abusif.

    J/
  • Je ne pense pas qu'on te laisse de côté mais ce que tu demandes ne se réglera pas en 2 coups de cuillère à pot (sauf si "sportbillyStéphane" nous sort une astuce de son sac de sport :D )

    Quoi, vous ne connaissez pas Sport Billy : tss, bandes de djeunes ]:D
  • Merci, Jerry.
    Non, je ne me sens pas de côté, hein, pour avoir bcp parcouru le forum, je sais bien que si 1 coup de cuillère à pot était suffisant, benh je l'aurais vite eu...le coup...de main...enfin de cuillère. :8
    Mais qd on voit faire "sportbilly", donc, dans sa réaction aux demandes sur ses plugin (1 question => une maj du plugin), on se prend à rêver que tt est possible.
    Parce que, moi je tourne en rond, là... du coup, je sais pas, peut-être que je vais en rester aux catégories et juste bien former les auteurs. Sauf si... un autre plugin peut me venir en aide, je regarde du côté des gabarits de rédaction, de champArt, etc avec une astuce, mais je vois pas.
    Merci de vous soucier, en tous cas.
  • Bon, j'ai poursuivi mes recherches et m'en suis sorti avec un vieux hack tout moche... à déconseiller donc puisque j'ai bricolé le core mais j'indique ici ma démarche pour 2 raisons: exaspérer les uns et éclairer les autres ]:D
    En gros, j'utilise les tags puisqu'ils ont, eux, une gestion qui me correspond:
    - les liens sur ma home pointe vers les tags ainsi:
    <li><a href="<?php $plxShow->racine() ?>/index.php?tag/002"><h3>Classe Machin</h3></a></li>
    
    - je remplis automatiquement le champ "mot clé" (Tag) lors de la rédaction d'un article en appelant l'ID du rédacteur en éditant, et c'est là que c'est MAL, le fichier /core/admin/article.php :ligne 183, remplacer
    $tags = '';
    
    par
    $tags = $_SESSION['user'];
    
    Donc là, si l'utilisateur n°008 rédige, son article sera automatiquement tagué 008, du coup je peux appeler la liste de ses articles comme vu plus haut.
    - enfin, tant que je suis dans la modif du core, je cache les catégories aux utilisateurs "writer" en entourant la liste des catégories (ligne 259 à 279 de core/admin/article.php) d'un
    <?php if($_SESSION['profil'] < PROFIL_WRITER) : ?>listing des catégories etc...<?php endif; ?>
    
    + quelques réglages et voilà!

    Mais j'insiste, tout ça n'est que bricolage pas bien recommandé, pas du tout même.
    Si d'ailleurs un modo pense que c'est une mauvaise idée de laisser ça sur le forum, je lui accorde volontiers. On peut aussi préceder le titre d'un [HACK BIEN MOCHE] aussi!

    Merci de m'avoir lu, et à bientôt ;)
  • Et tu es sûr que tu ne peux pas faire ça avec un plugin ?

    Pour la ligne 183, tu as deux hook tout mignons qui l'entoure eval($plxAdmin->plxPlugins->callHook('AdminArticleParseData')); et eval($plxAdmin->plxPlugins->callHook('AdminArticleInitData'));

    Pour les autres, tu as eval($plxAdmin->plxPlugins->callHook('AdminArticleInitData')); et <?php eval($plxAdmin->plxPlugins->callHook('AdminArticleSidebar')) # Hook Plugins ?>.

    Certes ils sont un peu "loin" des lignes qui t'intéressent mais ça sera quand même moins moche que de modifier le core...
  • ... ben voui, Jerry...
    Ce serait forcement plus clean.
    J'ai honte de l'avouer, mais je m'en suis toujours sorti de cette manière: n'ayant jamais fit l'effort d'apprendre la prog php, n'ayant même jamais ouvert la doc développeur, si ce n'est, et ça 1Milliard de fois, la page plxShow, j'ai toujours tâtonné avec moult échecs mais CtrlZ est là pour ça; je suis électricien, pas programmateur, je travaille par encadrement/déduction.
    A grand coup de 1 projet / 1 problème, je me suis privé d'apprendre (et des maj, aussi)...
    Allez, c'est promis, au prochain problème, je me lance dans la doc & l'apprentissage minimal du php.
    Merci, surtout, de ton attention.

    Julien
Connectez-vous ou Inscrivez-vous pour répondre.