Bitrix24 如何编写自定义事件处理程序

Bitrix24 How to write custom event handler

我想知道在不更改任何核心文件的情况下,我必须将自定义事件处理程序代码放在 bitrix24(自托管系统)中的什么位置。

AddEventHandler('socialnetwork', 'OnBeforeSocNetGroupAdd', 'TestHandler');
function TestHandler(&$arFields) {
   $arFields['DESCRIPTION'] .= ' It is forbidden to use foul language!';
   if ($GLOBALS['USER']->GetID() == 2) {
      $GLOBALS['APPLICATION']->throwException('You cannot create groups.');
      return false;
   }
}

如果不是自定义模块,您可以将代码放在两个地方:

  1. /bitrix/php_interface/init.php(如果没有init.php文件,则创建)

  1. 如果项目根目录中有 local 文件夹,则可以在 /local/php_interface/init.php
  2. 中创建文件 init.php