Le système de taxonomie a beaucoup changé depuis Drupal 6. Quelle est la meilleure façon d'obtenir tous les ID terme de taxonomie associés à un seul nœud dans Drupal 7?champs de taxonomie Traitement en drupal7
Répondre
$node = node_load($nid);
$terms = field_view_field('node', $node, 'field_tags', array('default'));
Où voulez-vous obtenir ces termes? Dans un module, un thème ...?
Avez-vous jetez un oeil à: http://api.drupal.org/api/drupal/modules--taxonomy--taxonomy.module
Dans un module. J'ai besoin d'une fonction quelque chose comme taxonomy_node_get_terms() dans drupal-6. J'ai déjà vérifié le document API. Il est possible que je sois négligent, mais je n'ai rien trouvé pour moi. – mimrock
La table field_data_field_tags couvre tout le champ par défaut Tags, qui pourrait ou ne pourrait pas exister et vous pourriez avoir d'autres taxonomies aussi.
Cependant, taxonomy.module maintient encore les tables taxonomy_term_data/taxonomy_index que vous pouvez interroger:
SELECT tid FROM {taxonomy_index} WHERE nid = :nid
Ou si vous voulez un vocabulaire spécifique ID:
SELECT ti.tid FROM {taxonomy_index} ti INNER JOIN {taxonomy_term_data} ttd ON ttd.tid = ti.tid WHERE ti.nid = :nid AND vid = :vid
complètement non testé.
- 1. form_set_error sur les champs de taxonomie?
- 2. Drupal7: type de contenu avec de nombreux champs
- 3. Comment Webform champs sous forme de tableau dans drupal7
- 4. Obtention d'une erreur d'exception d'entité mal formée lors de l'ajout d'un terme de taxonomie dans drupal7
- 5. Créer du contenu dans drupal7
- 6. Drupal7: afficher la page 404 après les contrôles en cours de pré-traitement
- 7. Drupal 7: Impression Les champs de taxonomie dans page.tpl.php
- 8. Traitement de plusieurs fichiers en Python et correspondance des champs
- 9. Drupal7: J'ai besoin d'injecter le nom de la catégorie dans mon noeud en utilisant mytheme_preprocess_node (& $ vars)
- 10. Drupal7: Essayer de thématiser une page spécifique en utilisant une fonction de pré-traitement, mais ... Je reçois un écran vide
- 11. Lecture des valeurs de champs de nœuds dans drupal7 par programmation
- 12. Utilisation d'entités personnalisées Drupal7 dans les vues
- 13. supprimer un fichier téléchargé drupal7
- 14. création de page de thème drupal7
- 15. Relation base_url relative dans Drupal7
- 16. Utilisez drupal7 bonté AJAX programme
- 17. apprentissage drupal7 développement de module simple
- 18. ajouter un terme de taxonomie en tant qu'argument lorsqu'il existe un filtre de taxonomie
- 19. Symfony Ajout et traitement de champs de formulaire personnalisés
- 20. Traitement d'un nombre variable de champs de formulaire dans PHP
- 21. taxonomie drupal
- 22. Graphique taxonomie
- 23. Données de champ dans une table, pas beaucoup. pour drupal7
- 24. Modèle de page drupal7 pour le module profile2
- 25. Traitement des champs de collecte inexistants dans les formulaires SonataAdminBundle
- 26. Drupal7 comparé à Drupal6? Quelles sont les différences entre Drupal7 et Drupal6?
- 27. PHP Formulaire de traitement avec seulement les champs remplis
- 28. sérialisation XML C#, pas le traitement de certains champs
- 29. Taxonomie: vue de haut niveau?
- 30. liste de taxonomie par auteur
J'ai lu ce livre aussi :) Mais est-ce la meilleure pratique? Je veux dire que cette fonction va récupérer un grand tableau multi-niveau (avec un objet dedans) et je dois chercher le terme ids manuellement. C'est juste un peu mieux de rechercher manuellement l'objet entier du noeud. – mimrock
Vous pouvez chercher les tids de DB en utilisant 'SELECT field_tags_tid DE field_data_field_tags OU entity_type = 'noeud' ET entity_id = $ nid' en entrée. – rik
Donc, vous voulez dire qu'il n'y a pas de fonctions pour cela dans l'API Drupal-7? Une fonction qui obtient le terme ids à partir d'un champ donné (terme-référence) suffirait ... C'est étrange pour moi s'il n'y a pas une telle chose dans drupal7. – mimrock