2015-05-13 94 views
1

你好我需要保存一些內容到MediaWiki中的數據庫當一個新的頁面被創建。 所以我在LocalSettings.php中添加鉤:Mediawiki來自另一個文件的呼叫掛鉤功能

$wgHooks['PageContentSaveComplete'][] ='assign_responsibility'; 

但我需要從一個擴展PHP文件Responsibility.php不LocalSettings調用函數assing_responsibility()。 我是新的Mediawiki系統,我找不到如何判斷MediaWiki在哪裏可以找到所需的掛鉤功能? 謝謝

回答

3

鉤值爲PHP callables;只要文件在調用鉤子之前被加載(或者,如果使用類方法而不是全局函數,則該類是通過$wgAutoloadClasses註冊的),它們可以在任何文件中定義。

的約定是,你的擴展(我假設被稱爲責任)創建了一個鉤子文件:

// ResponsibilityHooks.php 
class ResponsibilityHooks { 
    public static function onPageContentSaveComplete(/*...*/) { /*...*/ } 
    // ... 
} 

,並確保它能夠自動載入:

// Responsibility.php 
$wgHooks['PageContentSaveComplete'][] = 'ResponsibilityHooks::onPageContentSaveComplete'; 
$wgAutoloadClasses['ResponsibilityHooks'] = __DIR__ . '/ResponsibilityHooks.php';