編寫插件程序時(shí),可能需要讀取一些插件的信息,如果插件需要使用者進(jìn)行配置,還需要讀取使用者設(shè)置的參數(shù)值。Discuz! 允許插件程序使用數(shù)據(jù)庫讀取和緩存讀取這兩種方法獲取插件信息和參數(shù)。Discuz! 的插件接口已經(jīng)對插件信息進(jìn)行了合理的緩存,使用緩存讀取的方式,將比數(shù)據(jù)庫讀取速度更快,消耗的資源更是幾乎可以忽略不計(jì)。緩存讀取唯一的局限是需要插件使用插件接口提供的通用后臺(tái)管理程序。如果使用自定義后臺(tái)模塊的方式,需要后臺(tái)模塊將參數(shù)存放到 pluginvars 數(shù)據(jù)表中,才能被系統(tǒng)正常緩存。我們強(qiáng)烈推薦您通過緩存讀取插件信息和配置數(shù)據(jù)。
由于調(diào)用系統(tǒng)緩存統(tǒng)一通過“loadcache()”函數(shù)調(diào)用,并存放于 $_G['cache'] 中,因此“loadcache('plugin')”后插件的變量緩會(huì)存放于 $_G['cache']['plugin'] 中。嵌入點(diǎn)插件和以 plugin.php 為主腳本調(diào)用的插件無需加載此緩存,系統(tǒng)已自動(dòng)加載了緩存。變量配置類型為“版塊/*”的變量會(huì)保存在 $_G['cache']['forums'][fid]['plugin'] 中。變量配置類型為“用戶組/*”的變量會(huì)保存在 $_G['cache']['usergroup_groupid']['plugin'] 和 $_G['group']['plugin'] 中。
比如:站幫網(wǎng)的關(guān)于我們插件中about.inc.php文件
loadcache('plugin');
$var = $_G['cache']['plugin']['archy_about'];
復(fù)制代碼
|
模板about.htm中使用$var['gonggao']來調(diào)用插件的設(shè)置內(nèi)容。