How do I get a list of all taxonomy terms assigned to a node?
Taxonomy terms are implemented in fields in Drupal 7. Assuming you have defined a taxonomy field named field_category for your content type, you can access it as:

$language = 'und'; // or will be provided by some Drupal hooks
foreach ($node-&gt;field_category[$language] as $delta =&gt; $value) {
  $term = taxonomy_term_load($value['tid']);
}


If you don't have access to the field name, probably the easiest way for nodes is to query the database directly:

$results = db_query('SELECT tid FROM {taxonomy_index} WHERE nid = :nid', array(':nid' =&gt; $node-&gt;nid));
foreach ($results as $result) {
  $term = taxonomy_term_load($result-&gt;tid);
}


Keep in mind though, that you may end up dealing a jumble of terms from different vocabularies if you have more than one taxonomy field.