可以在hook_requirements中调用哪些笨拙函数('安装')? -- hooks 领域 drupal 相关 的问题

Which Drupal functions can be called in hook_requirements('install')?


2
vote

问题

中文

一般来说, hook_requirements( )在安装期间调用它们时,请勿使用任何Drupal函数。 node_requirements()使用一些drupal函数对于它被调用的任何阶段。

  http://www.example.com/items/item-1-name.html 0  

可以在 http://www.example.com/items/item-1-name.html 1

中调用哪个耳卸功能
英文原文

Generally, implementations of hook_requirements() don't use any Drupal function, when they are invoked during installation. node_requirements() uses some Drupal functions for whatever phase it is invoked.

  $requirements = array();   // Ensure translations don't break at install time   $t = get_t();   // Only show rebuild button if there are either 0, or 2 or more, rows   // in the {node_access} table, or if there are modules that   // implement hook_node_grants().   $grant_count = db_query('SELECT COUNT(*) FROM {node_access}')->fetchField();   if ($grant_count != 1 || count(module_implements('node_grants')) > 0) {     $value = format_plural($grant_count, 'One permission in use', '@count permissions in use', array('@count' => $grant_count));   }   else {     $value = $t('Disabled');   } 

Which Drupal functions can be called in hook_requirements('install')?

  
     
     

回答列表

0
 
vote
vote
最佳答案
 

我已经制作了swortals测试,我发现,根据您安装的模块或其他内容的模块,可用功能列表完全不同。

所以,imho是您在那一刻访问哪个函数的最佳方式,它将与php函数列出 get_defined_functions 。下面是我用来列出您可以使用的所有功能的小代码。

  <?php if ($phase == 'install') {   $funcs = get_defined_functions();   file_put_contents('./functions.txt', var_export($funcs['user'], 1)); }   
 

I've made severals tests and I found that depending on modules that you've installed or other things the list of available functions is quite different.

So, IMHO the best way to see which functions you can access at that moment its to list them with the PHP function get_defined_functions. Below it's the small code that I used to list all the functions you can use.

<?php if ($phase == 'install') {   $funcs = get_defined_functions();   file_put_contents('./functions.txt', var_export($funcs['user'], 1)); } 
 
 
 
 

相关问题

0  获取令牌树以上下文显示  ( Getting the token tree to appear contextually ) 
我正在编写自己的文件格式化程序,它应该是令牌兼容的。因为它也将用于分类学术语页面,它应该接受分类学术语令牌。通过说:,我在 hook_field_formatter_settings_form 中做错了 '#token_types' => array('node', 'taxonomy_term') 让我根...

0  hook_scheme不起作用[重复]  ( Hook scheme doesnt work ) 
这个问题已经在这里有答案: 关闭 8年前。 可能的重复: hook_schema不是创建数据库表 我正在Drupal 7中开发模块。它被称为SCORM。我创建了scorm.install文...

0  挂钩节点预载  ( Hook for node preload ) 
当 node_load 或 99887661 函数称为时,还有钩子是否调用,但在其实际加载到DB中之前? 我需要这个,因为我想在drupal前进之前缓存我的节点并为它们查询dB。 ...

5  我怎样才能看到正在运行的查询?  ( How can i see the query thats being run ) 
我正在使用hook_views_query_alter(),并且我真的很想根据改动正在运行的查询中的某个地方(屏幕,错误日志,无论如何)。我已经尝试了DPM($查询),但这给了我整个Krumo树 - 我想要的只是查询 - 即"选择x,y从z,其中a = 2" 。可能的? ...

2  hook_taxonomy_term_view_alter未被调用  ( Hook taxonomy term view alter is not being called ) 
在我的Drupal 7站点上,我有一个模块,需要确定所显示的页面类型/正在加载。 我首先实现了hook_entity_view_alter。这样做: /** * Implements hook_entity_view_alter */ /* function rsc_search_entity_view_al...

3  hook_update_n未运行  ( Hook update n is not running ) 
我知道有一个问题 hook_update_n没有运行,但我检查了它答案,它没有帮助。我只是学习开发司布的模块,所以也许这是一个非常愚蠢的东西,但我不知道... 我的钩子(在testmodule4.install): function testModule4_update_7001() { $schema['t...

2  基本术语中的钩子,行动和触发是什么?  ( What are hooks actions and triggers in basic terms ) 
在基本术语中是什么是钩子,动作和触发器。 我的想法是钩子允许你在发生事件时做某事,并且"某事" 是行动。 我有点麻烦弄清楚触发器适合等式。 ...

0  如何修改模块创建的URL? [关闭]  ( How to do you modify the url created by a module ) 
这个问题不太可能帮助任何未来的访客;它仅与小地理区域,特定时刻及时的特定时刻或非常狭窄的情况,这些情况通常不适用于互联网的全球观众。有关帮助提出这个问题更广泛适用,请访问帮助中心。 ...

0  自定义模块有帮助  ( Custom modules help ) 
首先,我是一个drupal初学者。 我需要在Drupal 7网站上实现奖励积分功能。当用户通过系统预订或者用户将网站指向其他朋友时,通过执行诸如用户注册的某些动作来给予用户。 我的问题是当管理员想知道用户奖励积分是什么时候。我怎样才能做到这一点?它是通过自定义模块并使用服装模板(tpl.php)吗? 谢谢。 ...

2  一些钩子如何工作,如果没有任何回报,没有任何引用  ( How some hooks works if doesnt return anything and doesnt have any references ) 
在Drupal API文档中是一个例子: function hook_user_view($account, $view_mode, $langcode) { if (user_access('create blog content', $account)) { $account->content['...

8  hook_init()的替代方案  ( Alternatives to hook init ) 
我使用 hook_init() 检查用户的上次访问时间。如果昨天上次访问时间是昨天,我会递增一个计数器并设置一些变量。 问题是 hook_init() 有时会更换一次(我可以使用 dsm() )进行同一页面加载,因此我的代码是多次执行的在错误的变量中。 为什么 hook_init() 执行不止一次? 我的问题最好的...

1  如何将变量交付给主题功能?  ( How do i deliver variables to a theme function ) 
我正在努力完成我的第一个视图显示插件。目前我在一个主题的阶段没有工作。 function MYMODULE_theme($existing, $type, $theme, $path) { return array( 'myfunc' => array( 'variables' => ar...

2  hook_views_pre_execute()查询未运行(或被覆盖)  ( Hook views pre execute query not running or being overwritten ) 
我正在尝试通过在自定义模块中使用 9988877662 来完全覆盖由视图UI创建的查询。我知道新的数据库API以及这个函数如何期望一个选择的对象,但我也读取(从摇篮曲的发布中,所以我认为它是合法的)如果你只是写一个查询并不需要要做任何条件,它是完全可以跳过的,只需使用 db_query() 使用原始SQL。 所以这是...

0  如何在视图挂钩模块中输出结果  ( How to output results in a view hook module ) 
所以我一直在尝试在视图钩中使用 db_select() (在这种情况下, _views_pre_execute() )来覆盖给定视图中存在的查询。我遵循指示,并得到了我认为应该是正确的,但真的很宁愿使用原始的SQL。根据 lullabot ,它完全没问题如果您的查询没有任何动态组件,则使用 db_query() 使用...

1  将节点提交表单放在块中  ( Put a node submit form in a block ) 
在Drupal 7中,我已定义一个名为 mycontenttype_block 的块。我希望块的输出成为现有内容类型的节点提交表单,如下所示: function mymodule_block_view($delta = '') { switch ($delta) { case ...

1  获取保存节点的节点ID  ( Get node id of saved node ) 
我希望在保存自定义节点类型时要调用的函数/钩子,我想在该函数中获取生成的节点ID,因为我必须基于nid执行一些操作。 我知道一个解决方案是定义了一个组成的表单,我为它提供了自定义提交函数,并且在提交表单时调用该函数,但在该案例节点尚未保存此点,所以没有nid。 ...

1  在保存上的同一节点上的另一个文本字段上使用文本字段值  ( Use text field value on another text field on same node on save ) 
我有两个字段在一个名为属性的内容类型上,需要相同的信息,我试图拥有它,以便只需要一次性输入用户。 我正在使用模块地址字段和位置,并需要用相同的邮政编码填写邮政编码。我需要得到它,所以我只需要一次输入邮政编码,它填充两者。我尝试了一个钩形形式改变(下面的示例),但除非再次保存节点,否则第二个字段没有得到文本。我明白为什...

0  如何触发词汇术语更新功能?  ( How to trigger function on vocabulary terms update ) 
在编辑/添加/删除的分类词汇表中的任何术语时是触发的钩子? i'v试图使用hook_taxonomy_vocubulary_update但到目前为止没有成功。 ...

2  ajaxify菜单链接  ( Ajaxify menu links ) 
我在左栏上有菜单,当我们单击菜单链接时,我需要在没有页面刷新的情况下在右列中发布数据。我正在寻找Ajaxify菜单。 你能告诉我一个例子如何ajaxify菜单链接? ...

0  为什么模块在单个页面加载时多次运行?  ( Why do modules run multiple times on a single page load ) 
在drupal 7中创建了一个实现 hook_init() 的模块。 我将错误日志消息作为函数的第一行。 function my_module_init() { error_log('running init'); } 在站点的每个页面加载时,我看到多次错误消息。我期待 hook_init() 每页一次...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.