How to print taxonomy terms field in node templates?
Yes, this will be used in all nodes with that field ! You could add a contenttype specific node.html.twig (see next point), or if you only want to add classes, do it in template_preprocess_node(&amp;$variables), add classes to $variables['content']['field_tags'][x]['attributes']['class'][] = 'my-style', you can check there for the contenttype.
What are you rendering ? If you render the node's field, you'll only get the assigned terms ?! For custom node-specific theming you could use something like this in


node--type-your_contenttype.html.twig:

   {% for item in content.field_tags %}
      {% if item['#title'] %}
        &lt;a href="{{ item['#url']}}" class="link-item"&gt;{{ item['#title']  }}&lt;/a&gt;
      {% endif %}
    {% endfor %}


Also {{ item['#options'].entity.url() }} or {{ path('entity.taxonomy_term.canonical', {'taxonomy_term': item['#options'].entity.tid}) }} could be used to retrieve the URL.



Regarding your icons

Use tid or parent and name it like icon-34. Access it in twig like: item['#options'].entity.parent or item['#options'].entity.tid.


  But I would recommend the use of a preprocess function to add a
  key-value pair to each item array where you set the name. For example
  from a field you added to your taxonomy. You could then access it in twig like {{ item.key }}