Récupérer la catégorie affichée dans une variable

Salut à tous, suite à mon précédent post ( http://forum.pluxml.org/viewtopic.php?id=198 ) dans lequel j'expliquait que je cherchais à récupérer le nom de la catégorie dans laquelle on se trouvait dans une variable, j'ai trouvé une autre solution que celle que m'avait donné Skyline, qui consistait à récupérer le nom de la catégorie du premier article de la page, solution qui malheureusement posait problème en page d'accueil (quand on est dans le mode où l'accueil présente les tous les articles, toutes catégories confondues), puisqu'en page d'accueil, le premier article ne fait jamais partie de la catégorie accueil, la variable prendrait donc une valeur différente selon la catégorie dans laquelle est classée le premier article (enfin le dernier chronologiquement).

Mon autre solution consiste à définir une variable "categorie" lors du click sur les liens du menu, pour cela j'ai effectué la modif suivante dans le fichier functions.php.

J'ai remplacé ça :
case 'catlist':
			echo '<ul>';
			if ($option != ''){
				echo '<li><a href="index.php">'.$option.'</a></li>';
			}
			foreach($pluxml->cat_used as $cat_num => $cat_info) {
				echo '<li><a href="?'.$cat_num.'/'.$cat_info['url'].'">'.$cat_info['name'].'</a></li>';
			}
			echo "</ul>\n";
		break;
par :
case 'catlist':
			echo '<ul>';
			if ($option != ''){
				echo '<li><a href="index.php">'.$option.'</a></li>';
			}
			foreach($pluxml->cat_used as $cat_num => $cat_info) {
				echo '<li><a href="?'.$cat_num.'/'.$cat_info['url'].'&categorie='.$cat_info['name'].'
">'.$cat_info['name'].'</a></li>';
			}

			echo "</ul>\n";
		break;
Résultat, ça marche, je récupère effectivement le nom de la catégorie, au moment du clic sur le lien du menu.

Je suis super content de moi et tout et tout (je vous avoue qu'on m'a un peu aidé pour la syntaxe, avec les ' " ... parce que je suis une vraie buse en php, mais sur le plan théorique ça vient de moi), sauf qu'après coup je me suis aperçu qu'effectivement les liens me définissaient bien la variable, mais le problème c'est qu'ils n'effectuent plus leur fonction première, c'est à dire trier dans la zone de contenu les articles correspondant à la catégorie demandée, et ça c'est quand même embêtant.

Je vous mets un lien histoire que vous vous rendiez compte par vous même, c'est encore en wip hein, je le précise :).

http://cms.synthesevideo.com/pluxml0.3.1/

C'est le site de la boite de mes patrons, je dois l'avoir fini avant le 31 décembre, puisque j'ai posé ma démission et que je quitte l'entreprise à cette date là, donc un coup de pouce de votre part me sauverait quand même bien la vie.

Le but de l'opération (je le rappelle, récupérer dans une variable le nom de la catégorie dans laquelle on se trouve) est d'afficher dynamiquement un header et une intro (pas encore fait ça) différente pour chaque catégorie (actuellement, les images de header ne sont pas def, hormis celle de la page d'accueil, j'ai juste mis des images différentes histoire de tester si ça marchait).

Quelqu'un sait pourquoi mes liens ne marchent plus ?

Voilà par exemple ce que donne l'un des liens après mes modifs :
http://cms.synthesevideo.com/pluxml0.3.1/index.php?001/Video&categorie=Vid%E9o
Merci :)

Réponses

  • Salut,

    Merci d'avoir posté ton astuce, ça donne un résultat super, Skysky je quémande une modification officielle, pour utiliser un header différent ;)

    Quel est le problème avec les liens ?
  • @stoopx : les liens ne marchent pas car ta modification perturbe complétement la reconnaissance d'url de Pluxml. (pour définir si on est en mode catégorie, post ou home, Pluxml se base sur la forme que possède l'url)

    @Diti : je n'ai pas commpris quelle modification tu demandes...
  • Merci Skyline pour l'info sur le pourquoi ça marche pas, mais euh au passage t'as pas une solution des fois ? :D

    Pour la modification que demande Diti, en gros c'est ce que je cherche à faire depuis pas mal de temps, avoir une variable qui récupère le nom de la catégorie dans laquelle on se trouve et qui arrive à reconnaitre l'accueil, ou qui ne prend aucune valeur sur l'accueil, après avec une telle variable, on peut faire se qu'on veut.

    S'il te plait Skyline, je suis sûr que c'est pas compliqué pour toi et apparemment ça en interresserait plus d'un, au moins deux avec Diti ;) et ça serait un super cadeau de noel :D

    Si c'est pas possible avec ma modif des liens du menu, il reste encore la première idée, celle de mon autre post, où tu m'as donné un bout de code que je n'ai pas compris et que personne n'a su m'expliquer. (je remet le lien vers le topic au cas où : http://forum.pluxml.org/viewtopic.php?id=198 )
  • Euh, laisse, j'ai rien dit :)
  • Oh ben non Diti, dis pas ça, je viens de lui dire qu'on était au moins 2 à être interressé par ça, et là tu me lâche lol, j'ai plus aucune chance d'obtenir un coup de main de Skyline maintenant.
  • Dans pluxml il y a déjà des variables qui donnent le nom de la catégorie ou son numéro, il suffit de savoir les maitriser.
    Pour ton cas ce n'est pas une bonne solution de faire passer le nom de la catégorie dans l'url (ça demande de modifier le coeur de Pluxml).
    La première solution était mieux, si j'ai un moment d'ici la fin de l'année je te ferais le code en entier
  • Oui j'avais bien compris qu'il existait déjà des variables qui donnent le nom de la catégorie, et j'ai aussi remarqué qu'il ne m'était pas facile de les maitriser, je me suis pourtant bien remuer les méninges, mais le fait de ne pas connaitre la syntaxe de php est vraiment un gros frein, il faudrait vraiment que je m'y mette, mais je n'arrive pas à trouver le temps, et je sais pas comment m'y prendre, je me mets à ta place et je me dis que ça doit être chiant les mecs comme moi qui veulent faire pleins de choses, mais qui savent pas se démerder tout seul.

    En tous cas je te remercie d'avance pour le coup de main, je te l'ai déjà dit, mais si je peux t'être utile pour quoi que ce soit d'autre que du dev php lol ;) (graphisme, xhtml/css, ...), n'hésite pas à me demander, ce sera avec plaisir.
  • bon alors j'ai eu une idée pour faire avancer le truc, mais ça marche pas :

    Je me suis dis, dans functions.php, on peut choper facilement le nom de la catégorie dans une variable, donc je vais essayer de créer une nouvelle "fonction" dédiée à ça, j'ai donc remis la fonction catlist par défaut, avant mes modifs.

    et j'ai essayer de rajouter la fonction qui suit (en me basant sur celles déjà existante, n'étant pas développeur) :
    case 'catname':
    			if ($option != ''){
    				&categorie='accueil';
    			}
    			else {&categorie=$cat_info['name'];
    			}
    			echo '&categorie='.&categorie;
    		break;
    
    et dans mon "template.php", je voulais y faire appel de la façon suivante :
    <?php __('catname'); ?>
    
    mais là quand je suis allé sur le site j'avais une belle page blanche, à noter que le
    echo '&categorie='.&categorie;
    
    je l'ai rajouté après pensant qu'il fallait que ma fonction affiche quelque chose dans mon template.php pour que ça marche.

    Est-ce qu'il y a de l'idée ou est-ce que j'ai fait complètement fausse route ? et si il y a de l'idée, qu'est-ce qui ne va pas ?
  • Un petit up, aucun développeur pour critiquer mon idée ?
  • Non désolé, j'ai une erreur 500 après avoir upgradé mon Pluxml, je ne peux pas t'aider :/
  • t'es sur un ftp free ? si oui, ca vient des serveurs de free et pas de pluxml, ca devrait se régler bientôt d'après ce qu'on m'a dit.
  • Salut,

    En fait c'était une erreur de OVH (ou plutôt de moi) quand je développe en local je mets un CHMOD 777 et sur OVH, c'est 755 qui simule le 777. Là, ça fonctionne :)
    Je regarde ça.
  • Ok, ouais j'ai vu qu'après que tu étais sur OVH :)

    Merci de jeter un oeil.
  • Skyline, t'as eu le temps de te pencher dessus ou pas ?

    Loin de moi l'idée de te presser, c'est juste pour savoir, mes futurs ex-patrons vont me demander où ça en est demain, et c'est juste histoire de pouvoir leur répondre.

    Merci encore de me filer un coup de main en tous cas et tiens j'en profite, je l'ai pas encore dit, joyeux Noel à tous les pluxmliens :)
  • Non désolé je n'ai toujours pas eu le temps d'y réfléchir.
  • Ok, pas de soucis, comme je l'ai dit, je veux pas te presser, je sais que tu vas me faire un truc, ça me suffit, après je te reposerais ptet la question de temps en temps, pour savoir où tu en es. :)

    Comme je l'ai déjà dit aussi, c'est surtout pour mes boss qui aimeraient que le site soit fini quand je quitterai la boite, mais en attendant, on peut faire sans cette fonctionnalité le temps que tu code un truc.
    D'ailleurs au passage, ils trouvent ça vraiment sympa, le fait que tu me files un coup de main, ils trouvent aussi le concept de pluxml (et même déjà le concept du cms qui ne leur est pas familier étant donné qu'ils ne bossent pas vraiment dans le web) interressant, ils ne demandent qu'a tester pour voir si c'est vraiment aussi bien que ce que je leur ai dit, et à mon avis quand ils auront testé, ils vont adorer et certainement te faire de la pub ;)
    Déjà, quand le site sera fini, j'essayerai d'y glisser un article qui parle de pluxml, ce que c'est, ... et pourquoi c'est le meilleur :D
Connectez-vous ou Inscrivez-vous pour répondre.