Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何覆盖Drupal7中已经添加的元标记?_Drupal_Drupal 7_Drupal Theming - Fatal编程技术网

如何覆盖Drupal7中已经添加的元标记?

如何覆盖Drupal7中已经添加的元标记?,drupal,drupal-7,drupal-theming,Drupal,Drupal 7,Drupal Theming,在主题供应商文件中,我有: $element=数组( “#tag”=>“meta”, “#属性”=>数组( “名称”=>“视口”, “内容”=>“宽度=设备宽度,初始比例=1.0”, ), ); drupal_add_html_head($element,'bootstrap_responsive'); 我不想触摸该文件,但我想在其他地方覆盖此设置。我当然可以做到: drupal_add_html_head(array( '#tag' => 'meta', '#attribute

在主题供应商文件中,我有:

$element=数组(
“#tag”=>“meta”,
“#属性”=>数组(
“名称”=>“视口”,
“内容”=>“宽度=设备宽度,初始比例=1.0”,
),
);
drupal_add_html_head($element,'bootstrap_responsive');
我不想触摸该文件,但我想在其他地方覆盖此设置。我当然可以做到:

drupal_add_html_head(array(
  '#tag' => 'meta',
  '#attributes' => array(
    'name' => 'viewport',
    'content' => 'maximum-scale=1.0' // Change is here
  )
), 'bootstrap_responsive_2');
这将起作用,但也将是相当丑陋的,因为它将创建2元标记在最后



我可以简单地覆盖已经添加的meta标记吗?

在自定义模块实现中。阅读链接后面那页上的评论,你会在那里找到一些有用的片段

function MYMODULE_html_head_alter(&$head_elements) {

  foreach ($head_elements as $key => $element) {

    if (isset($element['#attributes']['name']) && $element['#attributes']['name'] == 'viewport') {

      // Override 'content'.
      $head_elements[$key]['#attributes']['content'] = 'maximum-scale=1.0';
    }
  }
}