Discuz သည်လူကြိုက်များသော open source forum system ဖြစ်ပြီးသုံးစွဲသူများအားသတင်းအချက်အလက်များကိုမျှဝေရန်နှင့်အတွေ့အကြုံများကိုမျှဝေရန်လွယ်ကူချောမွေ့စေရန်အတွက်အလွန်အမင်းအပြန်အလှန်ဆက်သွယ်နိုင်သောနှင့်လူမှုရေးပလက်ဖောင်းများကိုထောက်ပံ့ပေးသည်။ ဤဆောင်းပါးသည် Discuz ၏ပွင့်လင်းသောအရင်းအမြစ်အင်္ဂါရပ်များကိုခွဲခြမ်းစိတ်ဖြာခြင်းနှင့်၎င်း၏စိတ်ကြိုက်ပြုပြင်ခြင်းကိုကုဒ်များဥပမာများဖြင့်သရုပ်ဖော်ပါလိမ့်မည်။
ပွင့်လင်းသောအရင်းအမြစ်ပရောဂျက်တစ်ခုအနေဖြင့် Discuz သည်သုံးစွဲသူများကိုကြည့်ရှုရန်နှင့်ပြုပြင်ရန်အတွက်အပြည့်အဝအရင်းအမြစ်ကုဒ်ကိုထောက်ပံ့ပေးသည်။ ဤပွင့်လင်းမြင်သာသူများသည် developer များက developer များက developer များက၎င်းတို့၏လိုအပ်ချက်များနှင့်အညီ deum system ကိုပြန်လည်တည်ဆောက်ရန်ခွင့်ပြုသည်။ System Code ကိုပြောင်းလွယ်ပြင်လွယ်စွာချိန်ညှိခြင်းဖြင့်အသုံးပြုသူများသည်ဖောင်စွမ်းပိုင်ခွင့်နှင့်အသုံးပြုသူအတွေ့အကြုံကိုတိုးတက်စေနိုင်သည်။
Discuz ကို PHP တွင်ရေးထားပြီး MVC (Model-View-Controller) ဗိသုကာအပေါ်အခြေခံသည်။ ၎င်း၏ဗိသုကာပညာကိုကျွမ်းကျင်ပြီးသောအခါ developer များကစိတ်ကြိုက်ဖွံ့ဖြိုးတိုးတက်မှုကိုပိုမိုလွယ်ကူစွာလုပ်ဆောင်နိုင်သည်။
အောက်ပါဥပမာသည် Controller အသစ်တစ်ခုကိုဖန်တီးခြင်းအားဖြင့်စိတ်ကြိုက်စာမျက်နှာကိုမည်သို့အကောင်အထည်ဖော်ရမည်ကိုပြသသည်။
// စာချုပ်စာတမ်း:source/plugin/demo/demo.inc.php
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
class plugin_demo {
public function __construct() {
}
public function index() {
global $_G;
include template('demo:demo');
}
}ဒီဥပမာမှာ Plugin Controller Plugin_Demo ကိုဖန်တီးပြီးထုံးစံစာမျက်နှာကိုပြသဖို့ အညွှန်း ပုံစံကိုသတ်မှတ်ပါ။ developer များကစာမျက်နှာအကြောင်းအရာကို template file ထဲသို့ထည့်သွင်းနိုင်ပြီးဖိုရမ် backend ရှိ Plug-ins ကို bind ။
Discuz ၏ပွင့်လင်းသောအရင်းအမြစ်သဘောသဘာဝကိုလည်းပလပ်လဒ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်လည်းထင်ဟပ်နေသည်။ အသုံးပြုသူများသည် Plug-in extensions များကို၎င်းတို့၏လိုအပ်ချက်များနှင့်အညီ,
// စာချုပ်စာတမ်း:source/plugin/demo/extend/credit.inc.php
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
$credit_rule = array(
'extcredit1' => '1', // တိုးချဲ့အချက်များ1
'extcredit2' => '2' // တိုးချဲ့အချက်များ2
);$ credit_rule ခင်းကျင်းမှုကိုအဓိပ္ပါယ်ဖွင့်ခြင်းအားဖြင့်အသုံးပြုသူများသည်အကြွေးအချိုးအစားကို သတ်မှတ်. အသုံးပြုသူများအတွက်ပလပ်နှင့်အခြားအသုံးပြုသူများအတွက် plug-in ကိုထုတ်ဝေနိုင်သည်။
အထက်ပါဥပမာများမှတဆင့် discuz ၏ open source feature များကိုထုံးစံအတိုင်းလုပ်ဆောင်ချက်များနှင့် plug-in extensions များတွင်ထင်ဟပ်နေသည်ကိုကျွန်ုပ်တို့တွေ့မြင်နိုင်သည်။ အသုံးပြုသူများသည်တစ် ဦး ချင်းလိုအပ်ချက်များကိုဖြည့်ဆည်းပေးရန်နှင့်ကိုယ်ပိုင်လိုအပ်ချက်များနှင့်ကိုက်ညီသောဖိုရမ်ပတ်ဝန်းကျင်ကိုဖန်တီးရန်စနစ်ကိုပြောင်းလွယ်ပြင်လွယ်ရှိနေသည်။
ပွင့်လင်းသောအရင်းအမြစ်ဖိုရမ်စနစ်အနေဖြင့် Discuz သည်ကြွယ်ဝသောဖွံ့ဖြိုးရေးနေရာနှင့်ပြောင်းလွယ်ပြင်လွယ်သောစိတ်ကြိုက်စွမ်းရည်များကိုထောက်ပံ့ပေးသည်။ ၎င်း၏ပွင့်လင်းသောအရင်းအမြစ်ဗိသုကာနှင့် plug-in ယန္တရားကိုနားလည်ခြင်းသည် developer များပိုမိုထိရောက်သောဖိုရမ် function တိုးချဲ့မှုနှင့်ကိုယ်ပိုင်လျှောက်လွှာများရရှိရန်အတွက် developer များအနေဖြင့်ဤအားသာချက်များကိုအပြည့်အဝအသုံးချရန်ကူညီလိမ့်မည်။