增減 Drupal HTML HEAD 的資訊 (Meta Tags & LINKs)

Drupal 頁面的 HTML <head> 有一堆 META TAGs 及 LINKs。這都是經 html.tpl.php 的 $head 輸出 ( $head = drupal_get_html_head() )。您可經由 hook_html_head_alter 修改其內容,比如要刪除 Drupal 的版權及版本宣告:


// 以 Bartik Theme 為例
function bartik_html_head_alter(&$head_elements){
  // dpm($head_elements); // 看看內裏有什麼怪東西

  // 找到了 'system_meta_generator' 這個不想要的傢伙
  unset($head_elements['system_meta_generator']);

  // 想增加 X-UA-Compatible,令 IE 永遠用最新的 Rendering Engine 或 Chrome Frame
  $head_elements['x_ua_Compatible'] = array(
    '#type' => 'html_tag', // 這不是必要的
    '#tag' => 'meta',
    '#attributes' => array(
      'http-equiv' => "X-UA-Compatible",
      'content' => "IE=edge,chrome=1",
    ),
  );
}

**
如果沒有效果:

一、你見鬼了;
二、忘記在 template.php 增減 FUNCTIONS 後重建 CACHES

特殊情況: 要是真的見鬼了,你可以手動修改 html.tpl.php,也不要在此留言帶給我衰氣 🙂
**

此外,也可以在 theme_preprocess_html() 或模組中利用 drupal_add_html_headdrupal_add_html_head_link 增加你想要的東西。