`

遭遇drupal keyword search模块bug,不能添加新的页面关键字

 
阅读更多
    这是个非常无聊而无奈的问题,昨晚在解决globalrediect模块的重定向循环问题,我的drupal终于可以开发seo相关的各个功能。

     第一时间跑去设置各个页面的关键字,结果立即被打击的不行,只要一点击Add page keyword,立即报错:

Notice: Undefined variable: keyword 在 kwresearch_page_keywords_edit() (行 419 在 /home/content/a/o/x/aoxiaojian/html/sites/all/modules/kwresearch/kwresearch.admin.inc).
Notice: Trying to get property of non-object 在 kwresearch_page_keywords_edit() (行 419 在 /home/content/a/o/x/aoxiaojian/html/sites/all/modules/kwresearch/kwresearch.admin.inc).
Notice: Undefined variable: keyword 在 kwresearch_page_keywords_edit() (行 422 在 /home/content/a/o/x/aoxiaojian/html/sites/all/modules/kwresearch/kwresearch.admin.inc).
Notice: Trying to get property of non-object 在 kwresearch_page_keywords_edit_form() (行 445 在 /home/content/a/o/x/aoxiaojian/html/sites/all/modules/kwresearch/kwresearch.admin.inc).
Notice: Trying to get property of non-object 在 kwresearch_load_page_keyword() (行 639 在 /home/content/a/o/x/aoxiaojian/html/sites/all/modules/kwresearch/kwresearch.module).
Notice: Undefined variable: msgs 在 kwresearch_load_page_keyword() (行 641 在 /home/content/a/o/x/aoxiaojian/html/sites/all/modules/kwresearch/kwresearch.module).
Notice: Trying to get property of non-object 在 kwresearch_page_keywords_edit_form() (行 456 在 /home/content/a/o/x/aoxiaojian/html/sites/all/modules/kwresearch/kwresearch.admin.inc).
Notice: Undefined property: stdClass::$priority 在 kwresearch_page_keywords_edit_form() (行 484 在 /home/content/a/o/x/aoxiaojian/html/sites/all/modules/kwresearch/kwresearch.admin.inc).
Notice: Undefined variable: output 在 kwresearch_page_keywords_edit() (行 422 在 /home/content/a/o/x/aoxiaojian/html/sites/all/modules/kwresearch/kwresearch.admin.inc).

    打开keyword search模块对应的文件一看,kwresearch.admin.inc被调用的代码:

function kwresearch_page_keywords_edit($pid, $kid = 'add') {
  if ($kid > 0) {
    $sql = '
      SELECT *
      FROM {kwresearch_keyword}
      WHERE kid = %d
    ';
    $keyword = db_fetch_object(db_query($sql, $kid));
    drupal_set_title(t('Edit page keyword'));
  }
  if (!$keyword->keyword) {
    drupal_set_title(t('Add page keyword'));
  }
  $output .= render(drupal_get_form('kwresearch_page_keywords_edit_form', $pid, $keyword));
  return $output;
}

    然后是kwresearch.module文件中调用代码

  $items['admin/structure/kwresearch/page_keywords_edit'] = array(
    'title' => t('Add page keyword'),
    'page callback' => 'kwresearch_page_keywords_edit',
    'access callback' => 'user_access',
    'access arguments' => array('kwresearch admin page keywords'),
    'type' => MENU_CALLBACK,
    'file' => 'kwresearch.admin.inc',
  );

   我10多年前,还在大学年说的时候使用过php,后来刚毕业时还用php写过几个简单的网站,但是现在快10年了,php的语法基本忘光了,不过从错误信息上看,貌似是调用时给的参数有问题,造成 if ($kid > 0) { 这个代码块没有被支持,$keyword没有被初始化和赋值,晕。

    去keyword search模块的网站上看了一下,已经有两个issue提到同样的问题,已经几个月了,不见fix。晕倒,这都什么代码质量啊?
分享到:
评论

相关推荐

    drupal 7.15 统计模块使用(15)

    统计模块是Drupal的一个可选安装模块,其主要功能在于收集和分析网站的数据,包括但不限于: - **内容的浏览量统计**:记录每个页面或内容的访问次数,有助于了解哪些内容最受欢迎。 - **用户访问统计**:跟踪用户...

    drupal 的smtp模块

    2. **启用**:登录到Drupal后台,进入“模块”页面,找到SMTP模块并启用它。 3. **配置**:点击“配置”链接,输入SMTP服务器的相关信息。根据你的SMTP服务提供商,填写相应的主机、端口、用户名、密码等。 4. **...

    drupal7模块开发教程

    ### Drupal 7 模块开发教程 #### 一、引言 Drupal 是一款非常强大的开源内容管理系统(CMS),被广泛应用于构建各种类型的网站。Drupal 的灵活性很大程度上得益于其丰富的模块系统,用户可以通过安装和配置不同的模块...

    Drupal模块分类

    总之,“Drupal模块分类”是一个强大且实用的工具,对于拥有大量模块的Drupal站点来说,它是必不可少的管理利器。通过有效分类和过滤,它可以帮助管理员更好地组织和管理站点的模块,提升整体的运营效率。

    入门到熟悉Drupal6.x模块开发简明实用教程

    - **创建配置函数**:为模块添加配置页面,需要在模块文件中定义一个配置钩子函数,如`test001_admin()`. - **注册页面到hook_menu()**:使用`hook_menu()`钩子注册配置页面,指定页面的路径、标题、访问权限等。 - ...

    Drupal views模块教程

    Drupal Views 模块是 Drupal 内容管理系统中的一个核心扩展,它允许用户自定义网站内容的展示方式,提供了强大的数据筛选、排序和格式化功能。本教程将详细讲解 Views 模块的使用方法,帮助你充分利用这个工具来优化...

    Drupal CAPTCHA模块配置

    你可以自定义验证码的特性,如在 "Characters to use in the code" 中设定验证码的字符集,"Codelength" 设置验证码的长度,"Distortion level" 可以选择不扭曲图像以提高用户体验,"Noise" 参数可以添加干扰元素以...

    Drupal Guestbook模块

    总的来说,Drupal Guestbook模块是一个基础的留言板解决方案,适合那些希望快速添加简单留言功能的网站。然而,如果你需要更高级的功能,如用户间的私信交流或者更复杂的权限管理,你可能需要考虑整合其他模块,或者...

    drupal6_customize_search:这是 drupal6 核心搜索模块,删除“节点”关键字

    drupal6_customize_search 这是 drupal6 自定义核心搜索模块要求删除“节点”关键字更改非英文页面的“搜索” 例如: /recherche/recherche/keyword1更新搜索模块/modules/search/search.module 在search_menu() ,...

    drupal7 扩展模块 Sildeshow

    接着,可能需要配置模块的设置,添加内容到幻灯片,最后在页面上添加相应的区块以展示幻灯片。 在使用过程中,如果遇到任何问题,可以查阅模块的文档或在 Drupal 论坛中寻求帮助。由于这是一个非官方模块,可能没有...

    Drupal 7模块开发

    ### Drupal 7模块开发知识点概览 #### 一、Drupal简介 Drupal是一款开源的内容管理系统(CMS),使用PHP语言编写,并且基于MySQL数据库。它能够帮助用户构建和维护各种类型的网站,包括个人博客、企业门户、社区...

    Drupal常用第三方模块使用手册

    - **概述**:Panels模块提供了一个强大的布局构建工具,使得非技术人员也能轻松创建复杂的页面布局。 - **特点**: - **拖放式编辑**:通过直观的界面,可以轻松调整区块位置。 - **多设备兼容**:支持响应式设计...

    drupal7 后台管理菜单模块

    Drupal 7 后台管理菜单模块是用于优化和增强Drupal内容管理系统后台界面的重要工具,它极大地提升了管理员在网站后台操作的效率和体验。这个模块通过重新组织和定制默认的Drupal管理菜单,使得管理工作更为直观、...

    drupal7 扩展模块 headimage

    Headimage 模块是 Drupal 7 社区中的一员,专门用于自定义页面头部的图像,为用户提供了一种灵活的方式来展示个性化的网站头部设计。 Headimage 模块的主要功能和特点包括: 1. **自定义头部图像**:这个模块允许...

    drupal 在线客服 module

    3. **激活模块**:在 Drupal 后台的 "Modules" 页面找到新添加的 "在线客服" 模块,勾选其复选框并保存配置,以激活该模块。 4. **配置模块**:激活后,你需要进入 "Configuration > Online Customer" 配置页面,...

    Drupal模块功能一览

    Drupal 是一个开源的内容管理系统(CMS),其核心特点之一是模块化的架构。模块是Drupal系统中的扩展功能单位,它们能够增加网站的各种特性,如用户管理、内容发布、社区互动等。Drupal的标准模块随版本一同提供,而...

    drupal7 自己写的扩展模块 news

    比如,`hook_menu()` 可用于定义模块提供的路由和页面,`hook_block()` 可创建自定义区块。 4. **数据库交互**:Drupal 使用自己的数据库层,通过 `db_query()` 或者 `EntityFieldQuery` API 进行数据操作。"news" ...

    Drupal ModuleFilter模块

    在启用之后,你可以在Drupal后台的“模块”配置页面看到新的布局和过滤选项。通过点击“管理过滤”按钮,你可以配置分类和过滤规则。 除了基本的分类和过滤,ModuleFilter还支持其他高级功能,比如自定义排序,你...

Global site tag (gtag.js) - Google Analytics