Salut,
Je rencontre un problème bizarre…
Je fais appel à la fonction taxonomy_select_nodes pour récuperer mes… nodes dans la taxonomie concernée.
Le problème vient du nombre de résultats retournés.
L’appel : db_query_range($sql, $args, 0, variable_get(‘feed_default_items’, 100)) ;
Quelque soit la valeur du dernier paramètre, il me retourne 9 résultats !
Si je colle dans phpMyAdmin la phrase :
SELECT DISTINCT (n.nid), n.sticky, n.title, n.created FROM node n INNER JOIN term_node tn ON n.vid = tn.vid
WHERE tn.tid IN ( 27 ) AND n.status =1 AND n.type = ‘reference_client’
J’obtiens bien ma 20aine de résultats !
Je comprend pas trop là…
Des idées ?
A+
David
- Vous devez vous identifier ou créer un compte pour écrire des commentaires

Est-ce que la requête dans $sql est bien celle que vous espérez ? Pouvez-vous essayer d’afficher le contenu de cette variable, par exemple avec
echo $sql;?Il y a un appel à db_rewrite_sql() juste avant l’appel à db_query_range(), ce qui peut significativement modifier la requête.
Damien Tournoud
808
Bonjour,
Est-ce que tu passe bien la variable $pager à false lors de l’appel à taxonomy_select_nodes ? Sinon, ce n’est pas db_query_range($sql, $args, 0, variable_get(‘feed_default_items’, 10)) ; qui est appelée, mais pager_query($sql, variable_get(‘default_nodes_main’, 10), 0, $sql_count, $args) ;
Juste au cas où…
bellesmanieres
92
Salut à tous (je répond aux 2 pour plus de simplicité) et merci de bien vouloir m’aider !
La requête présentée dans mon post est la requête résultante du db_rewrite_sql, juste avant de l’envoyer dans db_query_range.
J’ai aussi essayé avec db_query, idem, 9 résultats.
J’ai vu que dans Drupal, les listes étaient souvent limitées à 10 par défaut amis lç, je ne vois pas pourquoi il me limite !
De plus j’ai déplacé la fonction de taxonomy.module à mon template (en la renommant, évidemment) et j’ai complètement bypassé le pager, je ne fais plus appel qu’à db_query_range
david_services
7