get('slogan')); // array_push($head_title, [ // 'name' => $site_config->get('name'), // ]); // $vars['head_title'] = $head_title; // $title = "The new title"; // $request = \Drupal::request(); // if ($route = $request->attributes->get(\Symfony\Cmf\Component\Routing\RouteObjectInterface::ROUTE_OBJECT)) { // $route->setDefault('_title', $title); // } global $base_url; $theme = \Drupal::theme()->getActiveTheme(); $vars['#attached']['drupalSettings']['path']['themePath'] = $base_url .'/'. $theme->getPath(); $description = [ '#tag' => 'meta', '#attributes' => [ 'name' => 'description', 'content' => $site_config->get('slogan'), ], ]; $vars['page']['#attached']['html_head'][] = [$description, 'description']; // $gv = [ // '#tag' => 'meta', // '#attributes' => [ // 'name' => 'google-site-verification', // 'content' => "Y6PSbMfj67bXtMRAT-mFTAxrIeZPzC5jWSpH3M7yhkk", // ], // ]; // $vars['page']['#attached']['html_head'][] = [$gv, "google-site-verification"]; } function materiotheme_preprocess_page(&$vars){ // dsm($vars, 'vars'); } // function materiotheme_preprocess_node(&$vars){ // $node = $vars['elements']['#node']; // $options = ['absolute' => TRUE]; // $url = Url::fromRoute('entity.node.canonical', ['node' => $node->id()], $options); // $system_path = $url->getInternalPath(); // $vars['link_attributes'] = new Attribute(array( // 'data-drupal-link-system-path' => $system_path=='' ? '' : $system_path // )); // } // function materiotheme_preprocess_node_materiau_teaser(&$vars){ // $vars['attributes']['class'] = 'card'; // kint($vars['attributes']); // } /** * Implements hook_form_alter */ function materiotheme_form_user_login_form_alter(&$form, FormStateInterface $form_state, $form_id) { // dpm($form_id, 'form_id'); // dpm($form, 'form'); $form['name']['#attributes']['placeholder'] = (string) $form['name']['#title']; unset($form['name']['#title']); $form['pass']['#attributes']['placeholder'] = (string) $form['pass']['#title']; unset($form['pass']['#title']); } /** * Implements hook_theme_suggestions_HOOK_alter(). */ /** * Prepares variables for image formatter templates. * * Default template: image-formatter.html.twig. * * @param array $variables * An associative array containing: * - item: An ImageItem object. * - item_attributes: An optional associative array of html attributes to be * placed in the img tag. * - image_style: An optional image style. * - url: An optional \Drupal\Core\Url object. */ // function materiotheme_preprocess_image_formatter(&$vars){ // if(isset($vars['url'])){ // $system_path = $vars['url']->getInternalPath(); // $vars['link_attributes'] = new Attribute(array( // 'data-drupal-link-system-path' => $system_path=='' ? '' : $system_path, // 'class' => array('ajax-link') // )); // // dpm($vars); // } // } // function materiotheme_preprocess_links__language_block(&$vars){ // // dpm($vars); // // foreach ($vars['links'] as $lang_code => $link) { // // $vars['links'][$lang_code]['text'] = $lang_code; // // $vars['links'][$lang_code]['link']['#title'] = $lang_code; // // } // } function materiotheme_theme_suggestions_taxonomy_term_alter(&$suggestions, &$vars){ // ksm($suggestions); // ksm($vars); $original = $vars['theme_hook_original']; $bundle = $vars['elements']['#taxonomy_term']->bundle(); $viewmode = $vars['elements']["#view_mode"]; $suggestions[] = $original.'__'.$bundle.'__'.$viewmode; // dsm($suggestions); } function materiotheme_theme_suggestions_field_alter(&$suggestions, &$vars){ if($vars['element']["#entity_type"] === "commerce_product_variation" && $vars['element']["#bundle"] === "materio_product_variation_type" && $vars['element']["#field_name"] === "title"){ $test = 'test'; $original = $vars['theme_hook_original']; $entity_type = $vars['element']["#entity_type"]; $bundle = $vars['element']["#bundle"]; $field_name = $vars['element']["#field_name"]; $viewmode = $vars['element']['#view_mode']; $suggestions[] = $original.'__'.$entity_type.'__'.$bundle.'__'.$field_name.'__'.$viewmode; } } /** * Prepares variables for product templates. * * Default template: commerce-product.html.twig. * * @param array $variables * An associative array containing: * - elements: An associative array containing rendered fields. * - attributes: HTML attributes for the containing element. */ function materiotheme_preprocess_commerce_product(array &$variables) { $test="test"; // remove the variation as we already display it via views if($variables['elements']['#view_mode'] === 'order_summary' || $variables['elements']['#view_mode'] === 'home_summary'){ unset($variables['product']['variation_title']); unset($variables['product']['variation_field_description']); unset($variables['product']['variation_price']); unset($variables['product']['variation_field_multiple']); unset($variables['product']['variation_commerce_variation_cart_form']); } $language = \Drupal::languageManager()->getCurrentLanguage()->getId(); $variables['language'] = $language; } /** * Implements hook_theme_suggestions_commerce_product_variation(). */ // function materiotheme_theme_suggestions_commerce_product_variation_later(&$suggestions, &$vars) { // $test = 'test'; // } function materiotheme_preprocess_printable(array &$variables) { $site_config = \Drupal::config('system.site'); $variables['site_name'] = $site_config->get('name'); $variables['slogan'] = $site_config->get('slogan'); }