Drupal:每个页面都有密码文本字段,如何删除?

时间:2018-04-04 16:54:13

标签: drupal drupal-7

迁移后,每个页面都会在每个页面的末尾添加密码文本字段。

这是什么?如何删除或排除故障?

Drupal 7.27,带有apache 2.4和php 7.0(与php 5.6.35相同的问题)。

Textfield with pass name javascript and form

2 个答案:

答案 0 :(得分:3)

看看这些页面上加载了一个脚本(就在<form>本身上方),它创建了输入标签并将窗口焦点设置在其中:

<script type="text/javascript">
  var d = document; 
  d.write("<br><br><form method='post'><center><input type='password'...>...");
  // ...
</script>

您想要删除此脚本。

由于有几种方法可以在Drupal中包含javascript,因此可能很难找到对此负责的代码。鉴于脚本本身的丑陋,它很可能在主题模板文件中被编码(在这种情况下,迁移期间的主题切换将解释为什么你的问题突然出现)。

这样的丑陋片段很可能经常被硬编码,因此您可以在您网站的根目录和/或网站中搜索项目中js字符串的一部分(例如'd.write("<br><br><form') /所有。

最后,找到写下这个并打败他的人;)

答案 1 :(得分:1)

您的代码在每个创建输入类型密码的页面中都包含一个java脚本,因为它包含在每个页面中,这就是您获取此字段的原因。 请仔细检查您的要求。

在drupal中我们可以通过以下方法在drupal中添加JS

1.)按drupal_add_js()功能

drupal_add_js()是drupal api函数,包含js。

示例:

drupal_add_js('misc/collapse.js');

//添加JS文件

drupal_add_js('misc/collapse.js', 'file');

//包含内联javascript

drupal_add_js('jQuery(document).ready(function () { alert("Hello!"); });', 'inline');

//用于包含内联javascript和included并将其包含在页脚

drupal_add_js('jQuery(document).ready(function () { alert("Hello!"); });', array(
  'type' => 'inline',
  'scope' => 'footer',
  'weight' => 5,
));

//包括外部JS

drupal_add_js('http://example.com/example.js', 'external');

//用于将php值传递给JS

drupal_add_js(array(
  'myModule' => array(
    'key' => 'value',
  ),
), 'setting');

示例:

drupal_add_js(drupal_get_path('module', 'mymodule') . '/mymodule.js');

了解更多信息,请访问https://api.drupal.org/api/drupal/includes%21common.inc/function/drupal_add_js/7.x

2.)通过表单API添加

我们可以使用表单api的'#attached'属性来包含js

示例:

$form['#attached']['js'] = array(
  drupal_get_path('module', 'ajax_example') . '/ajax_example.js',
);

3.)在信息文件中添加JS

我们可以在脚本文件中包含javascript

示例:

name = My theme
description = Theme developed by me.
core = 7.x
engine = phptemplate

scripts[] = mytheme.js

4.)通过预处理功能

如果我们想条件包含JS,我们可以将它包含在预处理函数

function mytheme_preprocess_page(&$vars, $hook) {
  if (true) {
    drupal_add_js(drupal_get_path('theme', 'mytheme') . '/mytheme.js');
    $vars['scripts'] = drupal_get_js(); // necessary in D7?
  }
}