At times in Drupal 8, a site builder needs to create a custom content type page twig file. In Drupal 8 you can't just create it like you do with other twig files that come with Drupal core , you have to register a suggestion with the theme array. Adding The functions below to your template.theme will give the developer the ability to add a twig file called page--
/** * Implements hook_theme_suggestions_HOOK_alter() for form templates. * @param array $suggestions * @param array $variables * Needing to add page--.html.twig to build */ function theme_name_theme_suggestions_page_alter(array &$suggestions, array $variables) { //-- accesses the content type on page landing $access_content_type = _theme_name__access_content_type(); //-- custom function // if ($access_content_type != NULL ) { $suggestions[] = 'page__' .$access_content_type; } }
Access the current content type that is being loaded on this page
/** * Access current content type on page load. * Changing the function name protects you * from other modules. * @return mixed */ function _theme_name__access_content_type(){ if ($node = \Drupal::routeMatch()->getParameter('node')) { return $node->bundle(); } return NULL; }