original_string: public function addTaxonomy(PageInterface $page, $page_taxonomy = null)
      {
          if (!$page_taxonomy) {
              $page_taxonomy = $page->taxonomy();
          }
  
          if (empty($page_taxonomy) || !$page->published()) {
              return;
          }
  
          /** @var Config $config */
          $config = $this->grav['config'];
          if ($config->get('site.taxonomies')) {
              foreach ((array)$config->get('site.taxonomies') as $taxonomy) {
                  if (isset($page_taxonomy[$taxonomy])) {
                      foreach ((array)$page_taxonomy[$taxonomy] as $item) {
                          $this->taxonomy_map[$taxonomy][(string)$item][$page->path()] = ['slug' => $page->slug()];
                      }
                  }
              }
          }
      }
code: public function addTaxonomy(PageInterface $page, $page_taxonomy = null)
      {
          if (!$page_taxonomy) {
              $page_taxonomy = $page->taxonomy();
          }
  
          if (empty($page_taxonomy) || !$page->published()) {
              return;
          }
  
          /** @var Config $config */
          $config = $this->grav['config'];
          if ($config->get('site.taxonomies')) {
              foreach ((array)$config->get('site.taxonomies') as $taxonomy) {
                  if (isset($page_taxonomy[$taxonomy])) {
                      foreach ((array)$page_taxonomy[$taxonomy] as $item) {
                          $this->taxonomy_map[$taxonomy][(string)$item][$page->path()] = ['slug' => $page->slug()];
                      }
                  }
              }
          }
      }
code_tokens: public function addTaxonomy ( PageInterface $ page , $ page_taxonomy = null ) { if ( ! $ page_taxonomy ) { $ page_taxonomy = $ page -> taxonomy ( ) ; } if ( empty ( $ page_taxonomy ) || ! $ page -> published ( ) ) { return ; } /** @var Config $config */ $ config = $ this -> grav [ 'config' ] ; if ( $ config -> get ( 'site.taxonomies' ) ) { foreach ( ( array ) $ config -> get ( 'site.taxonomies' ) as $ taxonomy ) { if ( isset ( $ page_taxonomy [ $ taxonomy ] ) ) { foreach ( ( array ) $ page_taxonomy [ $ taxonomy ] as $ item ) { $ this -> taxonomy_map [ $ taxonomy ] [ ( string ) $ item ] [ $ page -> path ( ) ] = [ 'slug' => $ page -> slug ( ) ] ; } } } } }
docstring: Takes an individual page and processes the taxonomies configured in its header. It
  then adds those taxonomies to the map
  
  @param PageInterface  $page the page to process
  @param array $page_taxonomy
docstring_tokens: Takes an individual page and processes the taxonomies configured in its header . It then adds those taxonomies to the map