SugarCRM无法包含钩子

时间:2010-12-14 10:05:00

标签: php hook sugarcrm

我试图在SugarCRM中为Cases模块创建一个逻辑钩子。我将我的logic_hooks.php文件放入custom / modules / Cases目录中,但它从未包含在内。

我在include / utils / LogicHook.php文件中添加了一些调试,问题出在call_custom_logic函数中:

  

...

     

//声明钩子数组变量,它将在包含的文件中定义。

     

$ hook_array = null;

     

如果(!空($ module_dir)){

     

//这将加载一个钩子数组来处理

     

如果(file_exists( “自定义/模块/ $ module_dir / logic_hooks.php”)){

 $GLOBALS['log']->debug('Including module specific hook file for '.$module_dir);

 include("custom/modules/$module_dir/logic_hooks.php");
     

...

空文件夹测试成功,但file_exists始终返回false(如果我对此行进行注释,则include函数也会抛出错误。)

我想知道这是如何工作的,好像我读得好,file_exists函数只采用绝对路径,但它似乎适用于其他每个SugarCRM用户,所以我想我的配置在某个地方有问题。

任何帮助都是因为我真的不知道问题出在哪里!

2 个答案:

答案 0 :(得分:0)

不,file_exists()可以采用绝对路径和相对路径。验证您是否具有名为logic_hooks.php的文件,并且该文件对于运行您的Web服务器的用户是可读的。

答案 1 :(得分:0)

如果你的糖正在工作,他会自动设置路径,这就是你可以调用这样的文件的原因。

无论如何如上所述检查文件是否被命名为良好且权限是否正确