Ultimate Multisite ၁၀၁
Ultimate Multisite ဆိုတာ WordPress Multisite plugin တစ်ခုဖြစ်ပြီး သင့်ဖောက်သည်တွေကို WaaS (Websites as a Service) ဝန်ဆောင်မှု ပေးနိုင်စေပါတယ်။ Ultimate Multisite က သင့်စီးပွားရေးနဲ့ ဖောက်သည်တွေကို ဘယ်လိုကူညီနိုင်လဲဆိုတာ မစမီမှာ အခြေခံအသိပညာတချို့ကို ဦးစွာလေ့လာဖို့ လိုအပ်ပါတယ်။
WordPress Multisite
ကျွန်တော်တို့အများစုက သာမန် WordPress installation ကို ရင်းနှီးကြပါတယ်။ hosting provider ရဲ့ control panel ကတဆင့် ဖန်တီးတာဖြစ်စေ၊ ရဲရင့်သူတွေအတွက်တော့ web server နဲ့ database အသစ်တစ်ခု တည်ဆောက်ပြီး core files တွေ download ချကာ installation process ကို စတင်တာဖြစ်စေ လုပ်ဆောင်နိုင်ပါတယ်။
ဒီနည်းလမ်းက ကမ္ဘာတစ်ဝှမ်းမှာရှိတဲ့ WordPress site သန်းပေါင်းများစွာအတွက် အဆင်ပြေပေမယ့် agency ဒါမှမဟုတ် hosting provider ရှုထောင့်ကနေ ပမာဏအကြောင်း ခဏစဉ်းစားကြည့်ရအောင်။
WordPress site တစ်ခု ဖန်တီးဖို့ ဒါမှမဟုတ် automated control panel ကတဆင့် ရာဂဏန်းလောက် ဖန်တီးဖို့က လွယ်ကူပေမယ့် ဒီ site တွေကို စီမံခန့်ခွဲရာမှာတော့ ပြဿနာတွေ ပေါ်လာပါတယ်။ စီမံခန့်ခွဲမှုမရှိဘဲ ထားရင် malware အတွက် ပစ်မှတ်ကောင်းတစ်ခု ဖြစ်သွားမှာပါ။ စီမံခန့်ခွဲဖို့ဆိုရင်တော့ အားထုတ်မှုနဲ့ အရင်းအမြစ်တွေ လိုအပ်ပြီး WordPress site တွေရဲ့ စီမံခန့်ခွဲမှုကို ပိုမိုလွယ်ကူစေဖို့ external tool တွေနဲ့ plugin တွေ ရှိနေပေမယ့် ဖောက်သည်တွေမှာ administrative access ရှိနေတဲ့အတွက် ဒီအားထုတ်မှုတွေက အချည်းနှီးဖြစ်သွားနိုင်ပါတယ်။
WordPress ရဲ့ core ထဲမှာ 'Multisite' လို့ ရိုးရှင်းစွာ အမည်ပေးထားတဲ့ feature တစ်ခုပါဝင်ပြီး ၂၀၁၀ ခုနှစ် WordPress 3.0 မိတ်ဆက်ချိန်ကတည်းက စတင်ခဲ့ပါတယ်။ ထိုအချိန်မှစ၍ feature အသစ်တွေ ထည့်သွင်းခြင်းနဲ့ လုံခြုံရေး တင်းကျပ်စေခြင်းအတွက် ပြင်ဆင်မွမ်းမံမှုများစွာ ပြုလုပ်ခဲ့ပါတယ်။
အနှစ်ချုပ်အနေနဲ့ WordPress multisite ကို ဒီလိုမြင်ယောင်ကြည့်နိုင်ပါတယ်: တက္ကသိုလ်တစ်ခုက WordPress installation တစ်ခုတည်းကို ထိန်းသိမ်းထားပေမယ့် ဌာနတစ်ခုချင်းစီက သူတို့ကိုယ်ပိုင် WordPress site ကို ထိန်းသိမ်းကြပါတယ်။
ဒီဖော်ပြချက်ကို ပိုနားလည်စေဖို့ Ultimate Multisite documentation မှာသာမက WordPress community တစ်ခုလုံးမှာလည်း အသုံးပြုတဲ့ အခြေခံအသုံးအနှုန်းတချို့ကို လေ့လာကြရအောင်။
Network
WordPress အရ multisite network ဆိုတာ dashboard တစ်ခုတည်းကနေ subsite အများအပြားကို စီမံခန့်ခွဲနိုင်တဲ့နေရာ ဖြစ်ပါတယ်။ Multisite network ဖန်တီးပုံက hosting provider အလိုက် ကွဲပြားပေမယ့် နောက်ဆုံးရလဒ်ကတော့ wp-config.php file ထဲမှာ WordPress ကို ဒီ mode နဲ့ အလုပ်လုပ်နေကြောင်း အသိပေးတဲ့ directive တချို့ ထပ်ပေါင်းထည့်ခြင်း ဖြစ်ပါတယ်။
Multisite network နဲ့ stand-alone WordPress installation အကြား ကွဲပြားချက်များစွာ ရှိပြီး အကျဉ်းချုပ် ဆွေးနွေးပါမယ်။
Subdomain vs. Subdirectory
ချက်ချင်းဆုံးဖြတ်ရမယ့် ကိစ္စတစ်ခုက multisite installation ကို subdirectory နဲ့ အသုံးပြုမလား subdomain နဲ့ အသုံးပြုမလား ဆိုတာပါ။ Ultimate Multisite က နှစ်ခုလုံးနဲ့ အညီအမျှ ကောင်းကောင်းအလုပ်လုပ်ပေမယ့် configuration နှစ်ခုအကြား ဗိသုကာပိုင်းဆိုင်ရာ ကွဲပြားမှုတချို့ ရှိပါတယ်။
Subdirectory configuration မှာ network site တွေက main domain name အပေါ်မူတည်တဲ့ path ကို အမွေဆက်ခံပါတယ်။ ဥပမာ 'site1' လို့ အမည်ပေးထားတဲ့ network site ရဲ့ full URL က https://domain.com/site1 ဖြစ်ပါလိမ့်မယ်။ Subdomain configuration မှာတော့ network site က main domain name ကနေ ဆင်းသက်လာတဲ့ သူ့ကိုယ်ပိုင် subdomain ရှိပါလိမ့်မယ်။ ဒါကြောင့် 'site1' လို့ အမည်ပေးထားတဲ့ site ရဲ့ full URL က https://site1.domain.com/ ဖြစ်ပါလိမ့်မယ်။
နှစ်ခုလုံး မှန်ကန်တဲ့ ရွေးချယ်မှုတွေ ဖြစ်ပေမယ့် subdomain အသုံးပြုခြင်းက အားသာချက်တချို့ ပေးပါတယ်၊ သို့သော် ဗိသုကာပိုင်းမှာ ပိုပြီး စဉ်းစားတွေးခေါ်ရ စီမံရမှု လိုအပ်ပါတယ်။
DNS ပိုင်းမှာ subdirectory အသုံးပြုခြင်းက အတော်ရိုးရှင်းတဲ့ စိန်ခေါ်မှုတစ်ခုပဲ ဖြစ်ပါတယ်။ Network site တွေက parent path ရဲ့ child တွေ ဖြစ်တဲ့အတွက် main domain name အတွက် domain name entry တစ်ခုတည်းသာ လိုအပ်ပါတယ်။ Subdomain အတွက်တော့ စိန်ခေါ်မှုက ပိုရှုပ်ထွေးပြီး network site တစ်ခုချင်းစီအတွက် သီးခြား CNAME entry ဒါမှမဟုတ် DNS record တွေမှာ wildcard (*) entry လိုအပ်ပါတယ်။
နောက်ထပ်စဉ်းစားရမယ့်အချက်က SSL နဲ့ SSL certificate ထုတ်ပေးခြင်းနှင့် အသုံးပြုခြင်း ဖြစ်ပါတယ်။ Subdirectory configuration မှာ network site တွေက main domain name ရဲ့ path တွေသာ ဖြစ်တဲ့အတွက် domain certificate တစ်ခုတည်းနဲ့ အသုံးပြုနိုင်ပါတယ်။ ဒါကြောင့် domain.com အတွက် certificate က https://domain.com/site1, https://domain.com/site2 စသည်တို့အတွက် SSL ကို လုံလောက်စွာ ပေးနိုင်ပါလိမ့်မယ်။
Subdomain configuration မှာ wildcard SSL certificate အသုံးပြုခြင်းက အသုံးအများဆုံး ရွေးချယ်မှုတစ်ခု ဖြစ်ပါတယ်။ ဒီ SSL certificate အမျိုးအစားက domain နဲ့ သူ့ရဲ့ subdomain တွေအတွက် encryption ပေးပါတယ်။ ဒါကြောင့် wildcard SSL certificate က https://site1.domain.com, https://site2.domain.com နဲ့ https://domain.com ကိုယ်တိုင်အတွက် encryption ပေးပါလိမ့်မယ်။
အခြား option တွေ ရှိပေမယ့် အဲဒါတွေက scope နဲ့ application မှာ ကန့်သတ်ချက်ရှိပြီး သင့်လျော်မှုနဲ့ပတ်သက်ပြီး ထပ်ဆောင်း configuration နဲ့ စဉ်းစားတွေးခေါ်မှု လိုအပ်ပါတယ်။
Plugin များနှင့် Theme များ
WordPress ပေးသလို ယူပြန်လည်းယူပါတယ်၊ အနည်းဆုံးတော့ ဖောက်သည်ရှုထောင့်ကနေပေါ့။ Stand-alone WordPress installation မှာ site administrator က မကောင်းတဲ့ plugin တစ်ခု install လုပ်မိတာဖြစ်စေ သူတို့ရဲ့ installation ကို update မလုပ်ဘဲ ထားခဲ့တာဖြစ်စေ၊ ထိခိုက်သူနဲ့ နစ်နာသူက သူတို့ကိုယ်တိုင်သာ ဖြစ်ပါတယ်။ သို့သော် multisite installation မှာ site administrator တစ်ယောက်က မကောင်းတဲ့ plugin install လုပ်မိရင် network ထဲမှာ install လုပ်ထားတဲ့ site တိုင်းကို ထိခိုက်စေပါတယ်။
ဒီအကြောင်းကြောင့် multisite အဖြစ် configure လုပ်တဲ ့အခါ WordPress က site administrator တွေကို plugin နဲ့ theme တွေ install လုပ်ခွင့် ဖယ်ရှားပြီး ဒီအခွင့်အာဏာကို အသစ်ဖန်တီးထားတဲ့ network administrator ဒါမှမဟုတ် 'super admin' role ထံ ရွှေ့ပြောင်းပါတယ်။ ဒီ privileged role က network site administrator တွေကို သူတို့ dashboard ထဲမှာ plugins menu ကို မြင်ခွင့်ဒါမှမဟုတ် ဝင်ခွင့်ပေးမလား၊ ပေးရင်လည်း ဒီ permission တွေက plugin တွေကို activate ဒါမှမဟုတ် deactivate လုပ်ခြင်းအထိ ပါဝင်မလား ဆုံးဖြတ်နိုင်ပါတယ်။
ဒီအတိုင်းအတာအရ network administrator က network ထဲသို့ plugin နဲ့ theme တွေ install လုပ်ရန် တာဝန်ရှိပြီး ဒီ plugin နဲ့ theme တွေကို အသုံးပြုခွင့် permission ကို network site တွေသို့ လွှဲအပ်ပါတယ်။ Site administrator တွေက plugin နဲ့ theme တွေ install လုပ်လို့မရသလို သူတို့ site သို့ assign မလုပ်ထားတဲ့ plugin နဲ့ theme တွေကိုလည်း access လုပ်လို့မရပါ။
User များနှင့် Administrator များ
WordPress Multisite မှာ network site အားလုံးက တူညီတဲ့ database ကို မျှဝေသုံးစွဲတဲ့အတွက် တူညီတဲ့ user, role နဲ့ capability တွေကိုလည်း မျှဝေပါတယ်။ အကောင်းဆုံး စဉ်းစားနည်းက user အားလုံးက network ရဲ့ member တွေဖြစ်ပြီး တိကျတဲ့ site တစ်ခုခုရဲ့ member မဟုတ်ဘူးလို့ မြင်တာပါ။
ဒီနားလည်မှုအရ user တွေကို ဖန်တီးခွင့်ပေးတာ မလိုလားနိုင်ပြီး ဒီအကြောင်းကြောင့် WordPress Multisite က site administrator တွေဆီက ဒီအခွင့်အာဏာကို ဖယ်ရှားပြီး network administrator ဆီ ရွှေ့ပြောင်းပါတယ်။ Network administrator ကလည်း site administrator ကို သူတို့ကိုယ်ပိုင် site အတွက် user account ဖန်တီးခွင့်ပြုဖို့ လိုအပ်တဲ့ privilege တွေ လွှဲအပ်ပေးနိုင်ပါတယ်။
အထက်မှာ ပြောခဲ့သလို user account တွေက site နဲ့ ဆက်စပ်နေသလို ပေါ်ပေမယ့် တကယ်တော့ network ကို allocate လုပ်ထားတာဖြစ်ပြီး network တစ်ခုလုံးမှာ unique ဖြစ်ရပါမယ်။ ဒီအကြောင်းကြောင့် username တချို့ register လုပ်လို့မရတဲ့ အခြေအနေတွေ ရှိနိုင်ပါတယ်။
Enterprise system တွေမှာ အဆန်းမဟုတ်ပေမယ့် user registration နဲ့ authentication ကို နေရာတစ်ခုတည်းမှ စီမံခြင်းဆိုတဲ့ ဒီအယူအဆက user administration ပိုလွယ်ကူတဲ့ stand-alone WordPress installation နဲ့ ရင်းနှီးသူတွေအတွက် နားလည်ရခက်တဲ့ concept တစ်ခု ဖြစ်လေ့ရှိပါတယ်။
Media
WordPress Multisite မှာ network site တွေက database တစ်ခုတည်းကို မျှဝေသုံးစွဲပေမယ့် media file တွေအတွက် filesystem ပေါ်မှာ သီးခြား path တွေ ထိန်းသိမ်းပါတယ်။
စံ WordPress location (wp-content/uploads) က ကျန်ရှိနေပါတယ်၊ သို့သော် သူ့ path ကို network site ရဲ့ unique ID ကို ထင်ဟပ်စေဖို့ ပြောင်းလဲထားပါတယ်။ ထို့ကြောင့် network site တစ်ခုအတွက် media file တွေက wp-contents/uploads/site/[id] အဖြစ် ပေါ်လာပါတယ်။
Permalink များ
အရင်က subdomain က subdirectory configuration ထက် ထင်ရှားတဲ့ အားသာချက်တွေ ရှိတယ်လို့ ပြောခဲ့ပြီး ဒီနေရာမှာ ပေါ်လာပါတယ်: path တွေပါ။
Subdirectory configuration မှာ main site (network တည်ဆောက်တဲ့အခါ ပထမဆုံးဖန်တီးတဲ့ site) နဲ့ network subsite တွေက domain name ကနေ ဆင်းသက်လာတဲ့ တူညီတဲ့ path ကို မျှဝေရပါတယ်။ ဒါက conflict အများအပြား ဖြစ်နိုင်ခြေ ရှိပါတယ်။
Post တွေအတွက် main site မှာ network site တွေနဲ့ ပဋိပက္ခမဖြစ်အောင် မဖြစ်မနေ /blog/ path ထည့်ပေးရပါတယ်။ ဆိုလိုတာက 'Post name' လို pretty permalink တွေက domain.name/blog/post-name/ အဖြစ် ပေါ်လာပါလိမ့်မယ်။
Subdomain configuration မှာတော့ network site တစ်ခုချင်းစီက domain ခွဲထွက်မှု အပြည့်အဝရတဲ့အတွက် ဒီလုပ်ဆောင်ချက် မလိုအပ်ပါဘူး၊ path တစ်ခုတည်းကို မှီခိုနေစရာ မလိုပါဘူး။ သူတို့ subdomain အပေါ်မူတည်ပြီး သူတို့ကိုယ်ပိုင် path တွေ ထိန်းသိမ်းထားပါတယ်။
Static Page များ
Subdirectory configuration မှာ main site နဲ့ network site တွေက တူညီတဲ့ path ကို မျှဝေတဲ့အတွက် static page တွေအတွက်လည်း အမည်ပဋိပက္ခ ဖြစ်နိုင်ခြေ ရှိပါတယ်။
ဒါကို က ာကွယ်ဖို့ WordPress က ပထမ site ရဲ့ page တွေနဲ့ ပဋိပက္ခမဖြစ်အောင် site name တချို့ကို blacklist လုပ်ထားနိုင်တဲ့ နည်းလမ်းပေးထားပါတယ်။ ပုံမှန်အားဖြင့် network administrator က main site ရဲ့ page တွေရဲ့ root path တွေကို ထည့်သွင်းပါလိမ့်မယ်။
Subdomain configuration မှာ subdomain က network site အတွက် unique ဖြစ်ပြီး main site နဲ့ မည်သို့မျှ မဆက်စပ်တဲ့အတွက် အမည်ပဋိပက္ခ ဖြစ်နိုင်ခြေ နည်းပါတယ်။
Registration
WordPress Multisite ရဲ့ network setting တွေထဲမှာ user registration option အသစ်များစွာ ရနိုင်ပြီး user အသစ်နဲ့ ရှိပြီးသား user တွေကို site တွေ ဖန်တီးခွင့်ပေးပါတယ်။
Stand-alone WordPress installation တွေနဲ့ ဆန့်ကျင်ဘက်အနေနဲ့ network site တွေမှာ user registration ခွင့်ပြုခြင်းဒါမှမဟုတ် ထို registration တွေကို role တွေ assign လုပ်ခြင်း စတဲ့ ရင်းနှီးတဲ့ option တွေ မရှိပါဘူး။
User account တွေ ဖန်တီးတဲ့အခါ အဲဒီ account တွေက network level မှာ generate လုပ်ပါတယ်။ ဒါကြောင့် site တစ်ခုခုနဲ့ သက်ဆ ိုင်တာမဟုတ်ဘဲ network နဲ့ သက်ဆိုင်ပါတယ်။ ဒါက ထင်ရှားတဲ့ အားသာချက်နဲ့ အားနည်းချက်တချို့ ရှိပါတယ်။
ဥပမာ သင့် WordPress Multisite က သတင်းနဲ့ သတင်းအချက်အလက် လုပ်ငန်းမှာ ရှိတယ်ဆိုပါစို့။ Multisite ကို တည်ဆောက်ပြီး finance, technology, entertainment နဲ့ အခြား စိတ်ဝင်စားစရာနယ်ပယ်တွေအတွက် network site တွေ ဖန်တီးမယ်၊ plugin နဲ့ theme တွေကိုတော့ အလုံးစုံ ထိန်းချုပ်ထားမယ်။ Network site တစ်ခုချင်းစီက custom post type ဒါမှမဟုတ် သာမန် post category တွေထက် သူတို့ network site ရဲ့ ပုံပန်း၊ စတိုင်နဲ့ user experience ကို ပိုမိုထိန်းချုပ်နိုင်ပါလိမ့်မယ်။
ဒီအတိုင်းအတာအရ user တစ်ယောက် login ဝင်တဲ့အခါ network ကို login ဝင်တာဖြစ်ပြီး နောက်ဆုံးမှာ network site တစ်ခုချင်းစီကိုလည်း login ဝင်ထားပြီးသားဖြစ်ပြီး seamless experience ရရှိစေပါတယ်။ သင့် site အသစ်က subscription အခြေခံ ဖြစ်ရင် ဒါက အကောင်းဆုံး ဖြေရှင်းချက်နဲ့ ရလဒ် ဖြစ်ပါလိမ့်မယ်။
သို့သော် multisite ရဲ့ ရည်ရွယ်ချက်က တစ်ခုနဲ့တစ်ခု ဆက်စပ်မှုမရှိတဲ့ သီးခြား network site တွေကို ပေးဖို့ ဖြစ်ရင်တော့ user role တွေကို ကိုင်တွယ်ဖို့ external ဒါမှမဟုတ် additional plugin တွေ လိုအပ်တာ အမြဲလိုလိုပါပဲ။
Domain နှင့် SSL
WordPress Multisite installation တစ်ခုအကြောင်း ပြောရအောင်၊ ကျွန်တော်တို့ သတိမမူမိလောက်တဲ့ တစ်ခု - WordPress.com ပါ။ ဒါက WordPress multisite ရဲ့ အကျယ်ပြန့်ဆုံး ဥပမာဖြစ်ပြီး ရည်ရွယ်ချက်တစ်ခုကို ပြည့်မီစေဖို့ customize လုပ်နိုင်ပြီး ပုံသွင်းနိုင်တဲ့ ကျယ်ပြန့်တဲ့ စွမ်းရည်တွေကို သရုပ်ပြပါတယ်။
ယနေ့ခေတ် internet မှာ SSL အသုံးပြုခြင်းက မဖြစ်မနေလိုလိုဖြစ်ပြီး WordPress multisite တွေရဲ့ network administrator တွေက ဒီစိန်ခေါ်မှုတွေနဲ့ မကြာခင် ရင်ဆိုင်ရပါတယ်။
Subdomain configuration မှာ site တွေကို root domain name အပေါ်မူတည်ပြီး ဖန်တီးပါတယ်။ ဒါကြောင့် 'site1' လို့ အမည်ပေးထားတဲ့ site ကို 'site1.domain.com' အဖြစ် ဖန်တီးပါလိမ့်မယ်။ Wildcard SSL certificate ကို အသုံးပြုပြီး network administrator က ဒီစိန်ခေါ်မှုကို အောင်မြင်စွာ ကိုင်တွယ်နိုင်ပြီး network အတွက် SSL encryption စွမ်းရည်တွေ ပေးနိုင်ပါတယ်။
WordPress Multisite မှာ domain mapping function ပါဝင်ပြီး network site တွေကို custom domain name ဒါမှမဟုတ် network ရဲ့ root domain နဲ့ ကွဲပြားတဲ့ domain name တွေနဲ့ ချိတ်ဆက်ခွင့်ပေးပါတယ်။
Network administrator တွေအတွက် ဒါက domain name configuration နဲ့ SSL certificate ထုတ်ပေးခြင်းနှင့် ထိန်းသိမ်းခြင်း နှစ်ခုလုံးမှာ ရှုပ်ထွေးမှု အလွှာတစ်ခု ထပ်ပေါင်းထည့်ပါတယ်။
ဒီအတိုင်းအတာအရ WordPress Multisite က www.anotherdomain.com ကို 'site1' သို့ map လုပ်ခွင့်ပေးပေမယ့် network administrator က DNS entry တွေကို ပြင်ပမှ စီမံခန့်ခွဲခြင်းနဲ့ SSL certificate တွေ အကောင်အထည်ဖော်ခြင်းဆိုတဲ့ စိန်ခေါ်မှုနဲ့ ကျန်ရစ်ပါတယ်။
Ultimate Multisite
Stand-alone WordPress installation နဲ့ Multisite installation အကြား ကွဲပြားချက်တွေကို နားလည်ပြီးနောက် Ultimate Multisite က Websites as a Service ပေးဖို့ အဓိကလက်နက် ဖြစ်တာကို ကြည့်ကြရအောင်။
မိတ်ဆက်
Ultimate Multisite က Website as a Service (WaaS) ဖန်တီးဖို့ သင့်ရဲ့ Swiss Army knife ပါ။ Wix.com, Squarespace, WordPress.com တို့ကို စဉ်းစားကြည့်ပြီး သင့်ကိုယ်ပိုင် service ပိုင်ဆိုင်တာကို စဉ်းစားကြည့်ပါ။
အတွင်းပိုင်းမှာ Ultimate Multisite က WordPress Multisite ကို အသုံးပြုပေမယ့် network administrator တွေ multisite installation တွေမှာ ရင်ဆိုင်ရတဲ့ စိန်ခေါ်မှုများစွာကို ဖြေရှင်းပေးရုံသာမက use case အမျိုးမျိုးကို support လုပ်နိုင်စေတဲ့ စွမ်းရည်တွေကိုလည်း မြှင့်တင်ပေးပါတယ်။
အောက်ပါ section တွေမှာ အသုံးများတဲ့ use case တချို့နဲ့ အဲဒီ case တွေကို support လုပ်ဖို့ လိုအပ်တဲ့ considerations တွေကို ကြည့်ကြမယ်။