You are here

function taxonomy_implode_tags in Drupal 8

Same name and namespace in other branches
  1. 6 modules/taxonomy/taxonomy.module \taxonomy_implode_tags()
  2. 7 modules/taxonomy/taxonomy.module \taxonomy_implode_tags()
  3. 9 core/modules/taxonomy/taxonomy.module \taxonomy_implode_tags()

Implodes a list of tags of a certain vocabulary into a string.

See also

\Drupal\Component\Utility\Tags::explode()

File

core/modules/taxonomy/taxonomy.module, line 469
Enables the organization of content into categories.

Code

function taxonomy_implode_tags($tags, $vid = NULL) {
  $typed_tags = [];
  foreach ($tags as $tag) {

    // Extract terms belonging to the vocabulary in question.
    if (!isset($vid) || $tag
      ->bundle() == $vid) {

      // Make sure we have a completed loaded taxonomy term.
      if ($tag instanceof EntityInterface && ($label = $tag
        ->label())) {

        // Commas and quotes in tag names are special cases, so encode 'em.
        $typed_tags[] = Tags::encode($label);
      }
    }
  }
  return implode(', ', $typed_tags);
}