Submitted by jeanguy on
Bonjour à tous,
J'utilise Custom Breadcrumbs pour mes fils d'ariane et je souhaiterais personnaliser ceux-ci en fonction des term de taxonomy attribués aux articles.
Dans le champ "Breadcrumb visibility" on peut préciser une requête PHP qui va conditionner l'affichage ou non du fil d'Ariane.
Mon problème c'est que je suis novice en PHP et la syntaxe me pose problème...
Après quelques recherches, j'ai fait un test concluant avec ce code :
return ($node->nid == 2);
Le résultat : le fil d'Ariane ne s'affiche que sur le node dont l'ID = 2.
Dans la même logique je voudrais que la requête cherche plutôt si le term de taxonomy dont l'id = 9 est associé au node ou pas. Quelle est la requête PHP à utiliser pour ça ?
Si vous pouviez me donner un coup de main ou une référence compréhensible sur la manière de rédiger des requêtes simples de PHP avec le bon vocabulaire Drupal ... ça serait cool !
Merci
Jean-Guy
Je ne connais pas le module
Permalien Soumis par bellesmanieres le 23 Mars, 2010 - 15:22
Je ne connais pas le module Custom Breadcrumbs ni ta configuration, mais tu peux essayer quelque chose comme
en continuant mes recherches
Permalien Soumis par jeanguy le 23 Mars, 2010 - 15:38
en continuant mes recherches j'ai finalement trouvé la requête :
return (isset($node->taxonomy[65]));
où 65 est l'id du term que l'on souhaite utiliser. Ca marche !
cela dit j'ai maintenant le même problème pour les node privés. j'utilise le module "private" et je souhaite afficher un fil d'ariane spécifique sur les nodes privés.
Il faut donc que je modifie cette satanée requête PHP.
J'ai essayé : return (isset($node->private));
mais c'est un échec, c'est sûrement trop simple ... une piste peut-être ?
C'est effectivement beaucoup
Permalien Soumis par bellesmanieres le 23 Mars, 2010 - 15:49
C'est effectivement beaucoup mieux que ce que je proposais...
pour le private essaie return($node->private);ou genre
($node->private) ? return TRUE : return FALSE;
ça fonctionne très bien avec
Permalien Soumis par jeanguy le 23 Mars, 2010 - 16:00
ça fonctionne très bien avec :
return($node->private);
merci pour le coup de main, pas facile de comprendre la syntaxe PHP en tant que débutant et de "deviner" les termes qu'utilise Drupal ... mais ça va venir !
en tous cas j'ai de beaux fils d'Ariane, merci :)