diff --git a/core/modules/node/lib/Drupal/node/Tests/NodeAccessBaseTableTest.php b/core/modules/node/lib/Drupal/node/Tests/NodeAccessBaseTableTest.php
index 8fc72f6..75eded9 100644
--- a/core/modules/node/lib/Drupal/node/Tests/NodeAccessBaseTableTest.php
+++ b/core/modules/node/lib/Drupal/node/Tests/NodeAccessBaseTableTest.php
@@ -17,7 +17,7 @@ class NodeAccessBaseTableTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_access_test');
+  public static $modules = array('node_access_test', 'views');
 
   /**
    * The installation profile to use with this test.
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index 79c7b44..651eef0 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -1397,7 +1397,6 @@ function node_view_multiple($nodes, $view_mode = 'teaser', $langcode = NULL) {
  * default setting for number of posts to show on node listing pages.
  *
  * @see node_page_default()
- * @see taxonomy_term_page()
  * @see node_form_system_site_information_settings_form_submit()
  */
 function node_form_system_site_information_settings_form_alter(&$form, &$form_state, $form_id) {
diff --git a/core/modules/path/lib/Drupal/path/Tests/PathTaxonomyTermTest.php b/core/modules/path/lib/Drupal/path/Tests/PathTaxonomyTermTest.php
index c483d9e..d747ce2 100644
--- a/core/modules/path/lib/Drupal/path/Tests/PathTaxonomyTermTest.php
+++ b/core/modules/path/lib/Drupal/path/Tests/PathTaxonomyTermTest.php
@@ -17,7 +17,7 @@ class PathTaxonomyTermTest extends PathTestBase {
    *
    * @var array
    */
-  public static $modules = array('taxonomy');
+  public static $modules = array('taxonomy', 'views');
 
   public static function getInfo() {
     return array(
diff --git a/core/modules/rdf/lib/Drupal/rdf/Tests/TaxonomyAttributesTest.php b/core/modules/rdf/lib/Drupal/rdf/Tests/TaxonomyAttributesTest.php
index 268a247..87469f6 100644
--- a/core/modules/rdf/lib/Drupal/rdf/Tests/TaxonomyAttributesTest.php
+++ b/core/modules/rdf/lib/Drupal/rdf/Tests/TaxonomyAttributesTest.php
@@ -19,7 +19,7 @@ class TaxonomyAttributesTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $modules = array('rdf');
+  public static $modules = array('rdf', 'views');
 
   public static function getInfo() {
     return array(
diff --git a/core/modules/taxonomy/config/views.view.taxonomy_term.yml b/core/modules/taxonomy/config/views.view.taxonomy_term.yml
new file mode 100644
index 0000000..fb45497
--- /dev/null
+++ b/core/modules/taxonomy/config/views.view.taxonomy_term.yml
@@ -0,0 +1,225 @@
+base_field: nid
+base_table: node
+core: '8'
+description: 'Customize the default taxonomy/term display.'
+status: '0'
+display:
+  default:
+    id: default
+    display_title: Master
+    display_plugin: default
+    position: '1'
+    display_options:
+      query:
+        type: views_query
+        options:
+          query_comment: '0'
+          disable_sql_rewrite: '0'
+          distinct: '0'
+          slave: '0'
+          query_tags: {  }
+      access:
+        type: none
+        options: {  }
+      cache:
+        type: none
+        options: {  }
+      exposed_form:
+        type: basic
+        options:
+          submit_button: Apply
+          reset_button: '0'
+          reset_button_label: Reset
+          exposed_sorts_label: 'Sort by'
+          expose_sort_order: '1'
+          sort_asc_label: Asc
+          sort_desc_label: Desc
+      pager:
+        type: mini
+        options:
+          items_per_page: '10'
+          offset: '0'
+          id: '0'
+          total_pages: ''
+          expose:
+            items_per_page: '0'
+            items_per_page_label: 'Items per page'
+            items_per_page_options: '5, 10, 20, 40, 60'
+            items_per_page_options_all: '0'
+            items_per_page_options_all_label: 'All -'
+            offset: '0'
+            offset_label: Offset
+          tags:
+            previous: ‹‹
+            next: ››
+      sorts:
+        sticky:
+          id: sticky
+          table: node_field_data
+          field: sticky
+          order: DESC
+          plugin_id: standard
+          relationship: none
+          group_type: group
+          admin_label: ''
+          exposed: '0'
+          expose:
+            label: ''
+        created:
+          id: created
+          table: node_field_data
+          field: created
+          order: DESC
+          plugin_id: date
+          relationship: none
+          group_type: group
+          admin_label: ''
+          exposed: '0'
+          expose:
+            label: ''
+          granularity: second
+      arguments:
+        term_node_tid_depth:
+          id: term_node_tid_depth
+          table: node
+          field: term_node_tid_depth
+          default_action: 'not found'
+          exception:
+            title_enable: '1'
+          title_enable: '1'
+          title: '%1'
+          default_argument_type: fixed
+          summary:
+            format: default_summary
+          specify_validation: '1'
+          validate:
+            type: taxonomy_term
+          depth: '0'
+          break_phrase: '1'
+          plugin_id: taxonomy_index_tid_depth
+          relationship: none
+          group_type: group
+          admin_label: ''
+          breadcrumb_enable: '0'
+          breadcrumb: ''
+          default_argument_options: {  }
+          default_argument_skip_url: '0'
+          summary_options: {  }
+          validate_options: {  }
+          set_breadcrumb: '0'
+          use_taxonomy_term_path: '0'
+        term_node_tid_depth_modifier:
+          id: term_node_tid_depth_modifier
+          table: node
+          field: term_node_tid_depth_modifier
+          exception:
+            title_enable: '1'
+          default_argument_type: fixed
+          summary:
+            format: default_summary
+          specify_validation: '1'
+          plugin_id: taxonomy_index_tid_depth_modifier
+          relationship: none
+          group_type: group
+          admin_label: ''
+          default_action: ignore
+          title_enable: '0'
+          title: ''
+          breadcrumb_enable: '0'
+          breadcrumb: ''
+          default_argument_options: {  }
+          default_argument_skip_url: '0'
+          summary_options: {  }
+          validate:
+            type: none
+            fail: 'not found'
+          validate_options: {  }
+      filters:
+        status_extra:
+          id: status_extra
+          table: node_field_data
+          field: status_extra
+          group: '0'
+          expose:
+            operator: '0'
+          plugin_id: node_status
+      style:
+        type: default
+        options:
+          grouping: {  }
+          row_class: ''
+          default_row_class: '1'
+          row_class_special: '1'
+          uses_fields: '0'
+      row:
+        type: 'entity:node'
+        options:
+          view_mode: teaser
+          links: '1'
+          comments: '0'
+      header: {  }
+      footer: {  }
+      empty: {  }
+      relationships: {  }
+      fields: {  }
+  page_1:
+    id: page_1
+    display_title: Page
+    display_plugin: page
+    position: '2'
+    display_options:
+      query:
+        type: views_query
+        options: {  }
+      path: taxonomy/term/%
+  feed_1:
+    id: feed_1
+    display_title: Feed
+    display_plugin: feed
+    position: '3'
+    display_options:
+      query:
+        type: views_query
+        options: {  }
+      pager:
+        type: full
+        options:
+          items_per_page: '15'
+          offset: '0'
+          id: '0'
+          total_pages: ''
+          expose:
+            items_per_page: '0'
+            items_per_page_label: 'Items per page'
+            items_per_page_options: '5, 10, 20, 40, 60'
+            items_per_page_options_all: '0'
+            items_per_page_options_all_label: 'All -'
+            offset: '0'
+            offset_label: Offset
+          tags:
+            previous: '‹ previous'
+            next: 'next ›'
+            first: '« first'
+            last: 'last »'
+          quantity: '9'
+      path: taxonomy/term/%/%/feed
+      displays:
+        page: page
+        default: '0'
+      style:
+        type: rss
+        options:
+          description: ''
+          grouping: {  }
+          uses_fields: '0'
+      row:
+        type: node_rss
+        options:
+          relationship: none
+          item_length: default
+          links: '0'
+label: 'Taxonomy term'
+module: taxonomy
+id: taxonomy_term
+tag: default
+langcode: en
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/argument/IndexTid.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/argument/IndexTid.php
index 3979196..24de5dc 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/argument/IndexTid.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/argument/IndexTid.php
@@ -40,6 +40,7 @@ public function setBreadcrumb(&$breadcrumb) {
       return;
     }
 
+    module_load_include('inc', 'taxonomy', 'taxonomy.views');
     return views_taxonomy_set_breadcrumb($breadcrumb, $this);
   }
 
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/argument/IndexTidDepth.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/argument/IndexTidDepth.php
index 46b8086..3f9cdfb 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/argument/IndexTidDepth.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/argument/IndexTidDepth.php
@@ -28,7 +28,6 @@ protected function defineOptions() {
     $options['depth'] = array('default' => 0);
     $options['break_phrase'] = array('default' => FALSE, 'bool' => TRUE);
     $options['set_breadcrumb'] = array('default' => FALSE, 'bool' => TRUE);
-    $options['use_taxonomy_term_path'] = array('default' => FALSE, 'bool' => TRUE);
 
     return $options;
   }
@@ -55,17 +54,6 @@ public function buildOptionsForm(&$form, &$form_state) {
       '#default_value' => !empty($this->options['set_breadcrumb']),
     );
 
-    $form['use_taxonomy_term_path'] = array(
-      '#type' => 'checkbox',
-      '#title' => t("Use Drupal's taxonomy term path to create breadcrumb links"),
-      '#description' => t('If selected, the links in the breadcrumb trail will be created using the standard drupal method instead of the custom views method. This is useful if you are using modules like taxonomy redirect to modify your taxonomy term links.'),
-      '#default_value' => !empty($this->options['use_taxonomy_term_path']),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[set_breadcrumb]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
     parent::buildOptionsForm($form, $form_state);
   }
 
@@ -74,6 +62,7 @@ public function setBreadcrumb(&$breadcrumb) {
       return;
     }
 
+    module_load_include('inc', 'taxonomy', 'taxonomy.views');
     return views_taxonomy_set_breadcrumb($breadcrumb, $this);
   }
 
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermIndexTest.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermIndexTest.php
index c7abc5c..976fc4d 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermIndexTest.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermIndexTest.php
@@ -207,6 +207,7 @@ function testTaxonomyIndex() {
    * Tests that there is a link to the parent term on the child term page.
    */
   function testTaxonomyTermHierarchyBreadcrumbs() {
+    module_enable(array('views'));
     // Create two taxonomy terms and set term2 as the parent of term1.
     $term1 = $this->createTerm($this->vocabulary);
     $term2 = $this->createTerm($this->vocabulary);
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermTest.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermTest.php
index 26f04ad..c385a3a 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermTest.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermTest.php
@@ -289,6 +289,7 @@ function testTermAutocompletion() {
    * Save, edit and delete a term using the user interface.
    */
   function testTermInterface() {
+    module_enable(array('views'));
     $edit = array(
       'name' => $this->randomName(12),
       'description[value]' => $this->randomName(100),
diff --git a/core/modules/taxonomy/taxonomy.module b/core/modules/taxonomy/taxonomy.module
index 72222aa..2c7672b 100644
--- a/core/modules/taxonomy/taxonomy.module
+++ b/core/modules/taxonomy/taxonomy.module
@@ -249,20 +249,6 @@ function taxonomy_menu() {
     'type' => MENU_SIBLING_LOCAL_TASK,
   );
 
-  $items['taxonomy/term/%taxonomy_term'] = array(
-    'title' => 'Taxonomy term',
-    'title callback' => 'taxonomy_term_title',
-    'title arguments' => array(2),
-    'route_name' => 'taxonomy.term_page',
-  );
-  $items['taxonomy/term/%taxonomy_term/feed'] = array(
-    'title' => 'Taxonomy term',
-    'title callback' => 'taxonomy_term_title',
-    'title arguments' => array(2),
-    'route_name' => 'taxonomy.term_feed',
-    'type' => MENU_CALLBACK,
-  );
-
   $items['admin/structure/taxonomy/manage/%taxonomy_vocabulary'] = array(
     'route_name' => 'taxonomy.overview_terms',
     'title callback' => 'entity_page_label',
@@ -958,19 +944,6 @@ function taxonomy_allowed_values(FieldDefinitionInterface $field_definition, Ent
 }
 
 /**
- * Title callback for term pages.
- *
- * @param \Drupal\taxonomy\Entity\Term $term
- *   A taxonomy term entity.
- *
- * @return
- *   The term name to be used as the page title.
- */
-function taxonomy_term_title(Term $term) {
-  return $term->label();
-}
-
-/**
  * Form element validate handler for taxonomy term autocomplete element.
  */
 function taxonomy_autocomplete_validate($element, &$form_state) {
diff --git a/core/modules/taxonomy/taxonomy.pages.inc b/core/modules/taxonomy/taxonomy.pages.inc
deleted file mode 100644
index fb88184..0000000
--- a/core/modules/taxonomy/taxonomy.pages.inc
+++ /dev/null
@@ -1,71 +0,0 @@
-<?php
-
-/**
- * @file
- * Page callbacks for the taxonomy module.
- */
-
-use Drupal\taxonomy\Entity\Term;
-
-/**
- * Menu callback; displays all nodes associated with a term.
- *
- * @param \Drupal\taxonomy\Entity\Term $term
- *   The taxonomy term entity.
- *
- * @deprecated Use \Drupal\taxonomy\Controller\TaxonomyController::termPage()
- */
-function taxonomy_term_page(Term $term) {
-  // Assign the term name as the page title.
-  drupal_set_title($term->label());
-
-  $build['#attached']['drupal_add_feed'][] = array('taxonomy/term/' . $term->id() . '/feed', 'RSS - ' . $term->label());
-
-  foreach ($term->uriRelationships() as $rel) {
-    $uri = $term->uri($rel);
-    // Set the term path as the canonical URL to prevent duplicate content.
-    drupal_add_html_head_link(array('rel' => $rel, 'href' => url($uri['path'], $uri['options'])), TRUE);
-
-    if ($rel == 'canonical') {
-      // Set the non-aliased canonical path as a default shortlink.
-      drupal_add_html_head_link(array('rel' => 'shortlink', 'href' => url($uri['path'], array_merge($uri['options'], array('alias' => TRUE)))), TRUE);
-    }
-  }
-
-  $build['taxonomy_terms'] = taxonomy_term_view_multiple(array($term->id() => $term));
-  if ($nids = taxonomy_select_nodes($term->id(), TRUE, \Drupal::config('node.settings')->get('items_per_page'))) {
-    $nodes = node_load_multiple($nids);
-    $build['nodes'] = node_view_multiple($nodes);
-    $build['pager'] = array(
-      '#theme' => 'pager',
-      '#weight' => 5,
-    );
-  }
-  else {
-    $build['no_content'] = array(
-      '#prefix' => '<p>',
-      '#markup' => t('There is currently no content classified with this term.'),
-      '#suffix' => '</p>',
-    );
-  }
-  return $build;
-}
-
-/**
- * Generate the content feed for a taxonomy term.
- *
- * @param \Drupal\taxonomy\Entity\Term $term
- *   The taxonomy term entity.
- *
- * @deprecated Use \Drupal\taxonomy\Controller\TaxonomyController::termFeed()
- */
-function taxonomy_term_feed(Term $term) {
-  $channel['link'] = url('taxonomy/term/' . $term->id(), array('absolute' => TRUE));
-  $channel['title'] = \Drupal::config('system.site')->get('name') . ' - ' . $term->label();
-  // Only display the description if we have a single term, to avoid clutter and confusion.
-  // HTML will be removed from feed description.
-  $channel['description'] = check_markup($term->description->value, $term->format->value, '', TRUE);
-  $nids = taxonomy_select_nodes($term->id(), FALSE, \Drupal::config('system.rss')->get('items.limit'));
-
-  return node_feed($nids, $channel);
-}
diff --git a/core/modules/taxonomy/taxonomy.routing.yml b/core/modules/taxonomy/taxonomy.routing.yml
index 9ca17af..2733f54 100644
--- a/core/modules/taxonomy/taxonomy.routing.yml
+++ b/core/modules/taxonomy/taxonomy.routing.yml
@@ -75,17 +75,3 @@ taxonomy.overview_terms:
     _form: 'Drupal\taxonomy\Form\OverviewTerms'
   requirements:
     _entity_access: 'taxonomy_vocabulary.view'
-
-taxonomy.term_page:
-  path: '/taxonomy/term/{taxonomy_term}'
-  defaults:
-    _content: '\Drupal\taxonomy\Controller\TaxonomyController::termPage'
-  requirements:
-    _entity_access: 'taxonomy_term.view'
-
-taxonomy.term_feed:
-  path: '/taxonomy/term/{taxonomy_term}/feed'
-  defaults:
-    _content: '\Drupal\taxonomy\Controller\TaxonomyController::termFeed'
-  requirements:
-    _entity_access: 'taxonomy_term.view'
diff --git a/core/modules/taxonomy/taxonomy.views.inc b/core/modules/taxonomy/taxonomy.views.inc
index 001c125..f0f5159 100644
--- a/core/modules/taxonomy/taxonomy.views.inc
+++ b/core/modules/taxonomy/taxonomy.views.inc
@@ -467,27 +467,21 @@ function taxonomy_field_views_data_views_data_alter(array &$data, FieldInterface
 
 /**
  * Helper function to set a breadcrumb for taxonomy.
+ *
+ * @param array &$breadcrumb
+ *   An array reference containing a reference to
+ *   $view->build_info['breadcrumb'].
+ * @param \Drupal\views\Plugin\views\argument\ArgumentPluginBase $argument
+ *   The argument handler instance to get the argument from.
+ *
  */
 function views_taxonomy_set_breadcrumb(&$breadcrumb, &$argument) {
-  if (empty($argument->options['set_breadcrumb'])) {
-    return;
-  }
-
-  $args = $argument->view->args;
-  $parents = taxonomy_get_parents_all($argument->argument);
-  foreach (array_reverse($parents) as $parent) {
-    // Unfortunately parents includes the current argument. Skip.
-    if ($parent->id() == $argument->argument) {
-      continue;
-    }
-    if (!empty($argument->options['use_taxonomy_term_path'])) {
-      $path = $parent->uri();
-      $path = $path['path'];
-    }
-    else {
-      $args[$argument->position] = $parent->id();
-      $path = $argument->view->getUrl($args);
-    }
-    $breadcrumb[$path] = check_plain($parent->label());
+  $breadcrumb = array();
+  $current = taxonomy_term_load($argument->argument);
+  while ($parents = taxonomy_term_load_parents($current->id())) {
+    $current = array_shift($parents);
+    $uri = $current->uri();
+    $breadcrumb[$uri['path']] = $current->label();
   }
+  $breadcrumb = array_reverse($breadcrumb);
 }
diff --git a/core/modules/views/config/views.view.taxonomy_term.yml b/core/modules/views/config/views.view.taxonomy_term.yml
deleted file mode 100644
index c5cab5b..0000000
--- a/core/modules/views/config/views.view.taxonomy_term.yml
+++ /dev/null
@@ -1,231 +0,0 @@
-base_field: nid
-base_table: node
-core: '8'
-description: 'Content belonging to a certain taxonomy term.'
-status: false
-display:
-  default:
-    id: default
-    display_title: Master
-    display_plugin: default
-    position: 1
-    display_options:
-      query:
-        type: views_query
-        options:
-          query_comment: false
-          disable_sql_rewrite: false
-          distinct: false
-          slave: false
-          query_tags: {  }
-      access:
-        type: none
-        options: {  }
-      cache:
-        type: none
-        options: {  }
-      exposed_form:
-        type: basic
-        options:
-          submit_button: Apply
-          reset_button: false
-          reset_button_label: Reset
-          exposed_sorts_label: 'Sort by'
-          expose_sort_order: true
-          sort_asc_label: Asc
-          sort_desc_label: Desc
-      pager:
-        type: mini
-        options:
-          items_per_page: 10
-          offset: 0
-          id: 0
-          total_pages: 0
-          expose:
-            items_per_page: '0'
-            items_per_page_label: 'Items per page'
-            items_per_page_options: '5, 10, 20, 40, 60'
-            items_per_page_options_all: false
-            items_per_page_options_all_label: '- All -'
-            offset: false
-            offset_label: Offset
-          tags:
-            previous: ‹‹
-            next: ››
-      sorts:
-        sticky:
-          id: sticky
-          table: node_field_data
-          field: sticky
-          order: DESC
-          plugin_id: standard
-          relationship: none
-          group_type: group
-          admin_label: ''
-          exposed: false
-          expose:
-            label: ''
-          provider: views
-        created:
-          id: created
-          table: node_field_data
-          field: created
-          order: DESC
-          plugin_id: date
-          relationship: none
-          group_type: group
-          admin_label: ''
-          exposed: false
-          expose:
-            label: ''
-          granularity: second
-          provider: views
-      arguments:
-        term_node_tid_depth:
-          id: term_node_tid_depth
-          table: node
-          field: term_node_tid_depth
-          default_action: 'not found'
-          exception:
-            title_enable: true
-          title_enable: true
-          title: '%1'
-          default_argument_type: fixed
-          summary:
-            format: default_summary
-          specify_validation: true
-          validate:
-            type: taxonomy_term
-          depth: '0'
-          break_phrase: true
-          plugin_id: taxonomy_index_tid_depth
-          relationship: none
-          group_type: group
-          admin_label: ''
-          breadcrumb_enable: false
-          breadcrumb: ''
-          default_argument_options: {  }
-          default_argument_skip_url: false
-          summary_options: {  }
-          validate_options: {  }
-          set_breadcrumb: '0'
-          use_taxonomy_term_path: '0'
-          provider: taxonomy
-        term_node_tid_depth_modifier:
-          id: term_node_tid_depth_modifier
-          table: node
-          field: term_node_tid_depth_modifier
-          exception:
-            title_enable: true
-          default_argument_type: fixed
-          summary:
-            format: default_summary
-          specify_validation: true
-          plugin_id: taxonomy_index_tid_depth_modifier
-          relationship: none
-          group_type: group
-          admin_label: ''
-          default_action: ignore
-          title_enable: false
-          title: ''
-          breadcrumb_enable: false
-          breadcrumb: ''
-          default_argument_options: {  }
-          default_argument_skip_url: false
-          summary_options: {  }
-          validate:
-            type: none
-            fail: 'not found'
-          validate_options: {  }
-          provider: taxonomy
-      filters:
-        status_extra:
-          id: status_extra
-          table: node_field_data
-          field: status_extra
-          group: '0'
-          expose:
-            operator: '0'
-          plugin_id: node_status
-          provider: node
-      style:
-        type: default
-        options:
-          grouping: {  }
-          row_class: ''
-          default_row_class: true
-          row_class_special: true
-          uses_fields: false
-      row:
-        type: 'entity:node'
-        options:
-          view_mode: teaser
-          links: '1'
-          comments: '0'
-      header: {  }
-      footer: {  }
-      empty: {  }
-      relationships: {  }
-      fields: {  }
-  page_1:
-    id: page_1
-    display_title: Page
-    display_plugin: page
-    position: 2
-    display_options:
-      query:
-        type: views_query
-        options: {  }
-      path: taxonomy/term/%
-  feed_1:
-    id: feed_1
-    display_title: Feed
-    display_plugin: feed
-    position: 3
-    display_options:
-      query:
-        type: views_query
-        options: {  }
-      pager:
-        type: full
-        options:
-          items_per_page: 15
-          offset: 0
-          id: 0
-          total_pages: 0
-          expose:
-            items_per_page: '0'
-            items_per_page_label: 'Items per page'
-            items_per_page_options: '5, 10, 20, 40, 60'
-            items_per_page_options_all: false
-            items_per_page_options_all_label: '- All -'
-            offset: false
-            offset_label: Offset
-          tags:
-            previous: '‹ previous'
-            next: 'next ›'
-            first: '« first'
-            last: 'last »'
-          quantity: '9'
-      path: taxonomy/term/%/%/feed
-      displays:
-        page: page
-        default: '0'
-      style:
-        type: rss
-        options:
-          description: ''
-          grouping: {  }
-          uses_fields: '0'
-      row:
-        type: node_rss
-        options:
-          relationship: none
-          item_length: default
-          links: '0'
-label: 'Taxonomy term'
-module: taxonomy
-id: taxonomy_term
-tag: default
-uuid: e0dea92e-a4c9-4442-a518-2499bfe17d73
-langcode: en
diff --git a/core/modules/views/lib/Drupal/views/ViewExecutable.php b/core/modules/views/lib/Drupal/views/ViewExecutable.php
index 435da78..3082639 100644
--- a/core/modules/views/lib/Drupal/views/ViewExecutable.php
+++ b/core/modules/views/lib/Drupal/views/ViewExecutable.php
@@ -1747,9 +1747,18 @@ public function getBreadcrumb($set = FALSE) {
         }
       }
 
+      // Breadcrumb setting presently using legacy system [2026073].
       if ($set) {
-        if ($base && $current_breadcrumbs = drupal_set_breadcrumb()) {
-          $breadcrumb = array_merge($current_breadcrumbs, $breadcrumb);
+        // Allow legacy breadcrumb system to be used to alter the breadcrumb.
+        if ($base) {
+          if ($current_breadcrumbs = drupal_set_breadcrumb()) {
+            $breadcrumb = array_merge($current_breadcrumbs, $breadcrumb);
+          }
+          // If the frontpage is not in the trail, and there was no
+          // legacy breadcrumb set add the frontpage.
+          else {
+            array_unshift($breadcrumb, l(t('Home'), ''));
+          }
         }
         drupal_set_breadcrumb($breadcrumb);
       }
