web-dev-qa-db-ja.com

1ページだけのヘッダーのタイトルタグを変更するにはどうすればよいですか?

私は Page Title モジュールを試しましたが、コンテンツタイプレベルでのみページタイトルを構成できるようです。

このページのテンプルを作成して、そこにタイトルを直接書き込むことができますが、titleタグだけのテンプレートファイルをオーバーライドする気はありません。

タイトルを1つの特定のページ(ノードビューページ)に設定する他の方法はありますか?

1
chinita7

これは、template.phpファイルで管理できます。

function MYTHEMENAME_preprocess_page(&$vars) {
    $vars['title'] = $custom_title;
    $vars['head_title'] = $custom_title;
}

特定のパス、コンテンツタイプなどのようにページに条件を配置し、ページのタイトルを変更するだけです。

function mytheme_preprocess_page(&$vars){
    if (isset($vars['node']) && $vars['node']->type == 'news'){
        drupal_set_title('News');
    }
}
3
mohit_rocks

フロントページのブラウザのタイトルに問題があった。当サイト名は正常に動作しておりました。ただし、フロントページの場合のみ、ブラウザーのヘッダータイトルを表示できません。私は次のコードをフロントページのみに使用しました-

/**
 * implements hook_preprocess_html()
 * @param $vars
 */
function YOURTHEME_preprocess_html(&$vars) {
    if(drupal_is_front_page()){
        $vars['head_title'] = "Home | " . variable_get('site_name');
    }
}
2
Imran Sarder

これを試してください:

/**
 * Override or insert variables into the html template.
 */
function THEMENAME_preprocess_html(&$vars) {  
  switch ($vars['menu_item']['path']) {
    case 'profile-profile/%':
      $vars['head_title'] = implode(' | ', array('Hello!', variable_get('site_name')));
      break;
  }
}
0
mrded