【问题标题】:DRUPAL-7: hook declaration missingDRUPAL-7:钩子声明丢失
【发布时间】:2018-04-08 17:15:26
【问题描述】:

大家早上好,

我是 Drupal 的新手。 我希望不要问一个愚蠢的问题。 我正在使用 Drupal 7,我需要为我的公司编辑由另一位开发人员开发的自定义模块。 这是我使用“主题”功能的一段代码。 此代码位于“sites/all/modules/gestione_attivita_attivita/gestione_attivita_attivita.module”

function gestione_attivita_attivita_block_search_attivita($tipo_ricerca) {

  $block['subject'] = "";

  $ricerca = gestione_attivita_ricerca_fetchAll($tipo_ricerca);

  $block['content'] = theme('ricerca_attivita', array(
    'items' => $ricerca,
    'tipo_ricerca' => $tipo_ricerca
  ));
  return $block; 
}

我知道应该存在 "ricerca_attivita" 钩子在我的文件中声明的某处。 我一直在我的站点文件夹的所有文件中寻找类似"['ricerca_attivita'] = array(" 或类似的词或子词,但它不存在。 我唯一知道的是,在 :
"sites/all/themes/customModuleOfmyCompany/templates"
下有几个 tpl 文件,特别是一个名为 "ricerca_attivita.tpl.php" 的文件,它可以工作并从主题函数接收数据,但我不知道这怎么可能。
我不知道谁告诉主题调用去另一个路径上的另一个文件夹并使用“ricerca_attivita.tpl.php”而不是例如 foo.tpl.php。 有没有人可以帮助我?

另一件事:

在 include/theme.inc 下调试它我有这个打印钩子信息:

array (
  'template' => 'ricerca_attivita',
  'path' => 'sites/all/themes/customtheme/templates',
  'type' => 'theme_engine',
  'theme path' => 'sites/all/themes/customtheme',
  'preprocess functions' => 
  array (
    0 => 'template_preprocess',
    1 => 'contextual_preprocess',
  ),
  'process functions' => 
  array (
    0 => 'template_process',
    1 => 'ctools_process',
    2 => 'rdf_process',
  ),
)

但我不知道是谁声明的

【问题讨论】:

    标签: php drupal-7


    【解决方案1】:

    我认为你应该为他们使用开发者模块https://www.drupal.org/project/devel_themer

    关于主题功能,你在主题文件夹中搜索过这个功能吗?

    希望对您有所帮助。

    【讨论】:

    • 您好,抱歉耽搁了,我只是忘记清除缓存了。之后
    • 您好,抱歉耽搁了,我只是忘记清除缓存了。在这样做之后,在阅读enzoazzolini.it/guidadrupal/themeregistry 之后,特别是在了解了 drupal 搜索自定义主题的工作原理之后,我完全理解了。
    猜你喜欢
    • 1970-01-01
    • 2018-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多