Skip to main content

Code Snippets សម្រាប់ v2

ជាមូលដ្ឋានហើយ, code snippets សម្រាប់ WordPress គឺប្រើដើម្បីធ្វើសកម្មភាពជាក់លាក់មួយ ដែលបើមិនដូច្នោះទេ ប្រហែលជាត្រូវការ plugin តូចផ្សេងទៀត។ code snippets ទាំងនេះត្រូវបានដាក់នៅក្នុងឯកសារ core ឬ theme របស់ WordPress (ជាទូទៅគឺឯកសារ functions.php នៃ theme របស់អ្នក) ឬក៏អាចប្រើជា MU plugin បានដែរ។

នៅក្នុងអត្ថបទនេះ យើងនឹងបង្ហាញអ្នកនូវ code snippets បី ដែលអាចប្រើជាមួយ Ultimate Multisite v2

ការផ្លាស់ប្តូរទីតាំងនៃមុខងារเมนู Account

ដើម្បីផ្លាស់ប្តូរទីតាំងនៃមុខងារเมนู Account នៅលើ Dashboard របស់អតិថិជនរបស់អ្នក សូមបន្ថែម code snippet ខាងក្រោមទៅក្នុង functions.php នៃ theme ដែលកំពុងដំណើរការរបស់គេហទំព័រ chính របស់អ្នក។ អ្នកក៏អាចដាក់ snippet នោះនៅក្នុង mu-plugin ឬ custom plugin ណាមួយរបស់អ្នកបានដែរ។

add_filter('wu_my_account_menu_position', function() { return 10; // កែតម្រូវតម្លៃនេះដើម្បីដាក់เมนูនៅទីតាំងដែលអ្នកចង់បាន។

របៀបពិនិត្យមើលថាតើអ្នកប្រើប្រាស់ស្ថិតក្រោមផែនការជាក់លាក់មួយ និង/ឬមានការជាវសកម្មដែរឬទេ

ក្នុងនាមជា network admin អ្នកអាចនឹងត្រូវការបង្កើត functions ដែលធ្វើសកម្មភាពមូលដ្ឋាន ឬផ្តល់សេវាកម្ម/មុខងារដល់ក្រុមអ្នកជាវ ឬអ្នកប្រើប្រាស់ចុងក្រោយដែលបានជ្រើសរើស ដោយផ្អែកលើស្ថានភាពនៃការជាវ និងផែនការដែលពួកគេកំពុងជាវ។

Functions ដើមរបស់ Ultimate Multisite ទាំងនេះនឹងជួយអ្នកក្នុងកិច្ចការនោះ។

ដើម្បីពិនិត្យមើលថាតើអ្នកប្រើប្រាស់ជាសមាជិកនៃផែនការជាក់លាក់មួយដែរឬទេ អ្នកអាចប្រើ function នេះ៖

wu_has_plan($user_id, $plan_id)

ដើម្បីពិនិត្យមើលថាតើការជាវ (subscription) ដំណើរការឬអត់ អ្នកអាចប្រើមុខងារនេះ៖

wu_is_active_subscriber($user_id)

ខាងក្រោមនេះគឺជាឧទាហរណ៍ខ្លីមួយដែលត្រួតពិនិត្យមើលថាតើអ្នកប្រើប្រាស់បច្ចុប្បន្នស្ថិតនៅក្រោមផែនការជាក់លាក់ណាមួយ (Plan ID 50) និងការជាវរបស់គាត់កំពុងដំណើរការឬអត់។

$user_id = get_current_user_id(); $plan_id = 50; if (wu_has_plan($user_id, $plan_id) && wu_is_active_subscriber($user_id)) { // អ្នកប្រើប្រាស់ជាសមាជិកនៃផែនការ ហើយការជាវរបស់គាត់កំពុងដំណើរការ សូមធ្វើអ្វីមួយ } else { // អ្នកប្រើប្រាស់មិនមែនជាសមាជិកនៃផែនការទេ -- ឬ -- ការជាវរបស់គាត់មិនបានដំណើរការទេ សូមធ្វើអ្វីផ្សេង}

ចំណាំថា _**wu_has_plan**_ ទាមទារឱ្យមាន "Plan ID" ដើម្បីដំណើរការ។

ដើម្បីទទួលបាន ID នៃផែនការមួយ អ្នកអាចចូលទៅកាន់ Ultimate Multisite > Products។ ID នៃផលិតផលនីមួយៗនឹងបង្ហាញនៅខាងស្តាំនៃតារាង។

ចំណាំថា អ្នកប្រើប្រាស់អាចជាវបានតែ Plan ប៉ុណ្ណោះទេ មិនមែន Package ឬ Service ទេ ព្រោះពួកវាគ្រាន់តែជាផ្នែកបន្ថែមសម្រាប់ Plan ប៉ុណ្ណោះ។

Products list showing plan IDs

ការជួសជុលបញ្ហា CORS ដោយប្រើ Font-Icons នៅលើដែនដែលបានកំណត់ (mapped domains)

ការជួសជុលបញ្ហា CORS ដោយប្រើ Font-Icons នៅលើដែនដែលបានកំណត់ (mapped domains)

បន្ទាប់ពីអ្នកបានកំណត់ដែនទៅកាន់ sub-site អ្នកប្រហែលជាជួបបញ្ហាថាគេហទំព័រមានការលំបាកក្នុងការផ្ទុក font ដែលអ្នកកែសម្រួល។ បញ្ហានេះបណ្តាលមកពីការរារាំងឆ្លងដែន (cross-origin block) នៅក្នុងការកំណត់ម៉ាស៊ីនរបស់អ្នក។

ដោយសារឯកសារ font ភាគច្រើនត្រូវបានផ្ទុកដោយផ្ទាល់ពី CSS ដូច្នេះ plugin ការកំណត់ដែនរបស់យើងមិនអាចសរសេរ URL ឡើងវិញដើម្បីប្រើដែនដែលបានកំណត់ជំនួសឱ្យដែនដើមនោះទេ ដូច្នេះដើម្បីជួសជុលបញ្ហានេះ អ្នកនឹងត្រូវកែសម្រួលឯកសារការកំណត់ម៉ាស៊ីនរបស់អ្នក។

ខាងក្រោមនេះគឺជាកូដសម្រាប់ជួសជុលបញ្ហាសម្រាប់ Apache និង NGINX។ ការផ្លាស់ប្តូរទាំងនេះទាមទារចំណេះដឹងខ្ពស់អំពីឯកសារកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនមេ (.htaccess files និង NGINX config files)។ ប្រសិនបើអ្នកមិនស្រួលក្នុងការធ្វើការផ្លាស់ប្តូរដោយខ្លួនឯងទេ សូមផ្ញើหน้านี้ទៅកាន់ក្រុមជំនួយរបស់អ្នកផ្តល់ hosting នៅពេលដែលអ្នកត្រូវការជំនួយ។

Apache

នៅក្នុងឯកសារ .htaccess របស់អ្នក សូមបន្ថែម៖

<FilesMatch “.(ttf|ttc|otf|eot|woff|font.css|css)$”> Header set Access-Control-Allow-Origin “*”

NGINX

នៅក្នុងឯកសារកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនមេរបស់អ្នក (ទីតាំងអាចខុសគ្នាទៅតាម server) សូមបន្ថែម៖

location ~ .(ttf|ttc|otf|eot|woff|font.css|css)$ { add_header Access-Control-Allow-Origin “*”;}