Addon Sunrise fayl yuklagichi
Ultimate Multisite 2.8.0 add-onlar va yaratilgan wp-content/sunrise.php faylini tahrirlamasdan WordPress sunrise ishga tushirish jarayonida ishlashi kerak bo‘lgan maxsus MU-plugin integratsiyalari uchun sunrise kengaytma yuklagichini qo‘shadi.
Qachon undan foydalanish kerak
Integratsiyangiz odatiy pluginlar yuklanishidan oldin ishlashi kerak bo‘lsa, masalan, maxsus domen yo‘naltirish, hostga xos so‘rovlarni qayta ishlash yoki erta tarmoq ishga tushirish sozlamalari kabi holatlarda sunrise kengaytmasidan foydalaning.
Oddiy integratsiyalar uchun odatiy WordPress pluginlari, MU-pluginlar va hujjatlashtirilgan Ultimate Multisite hooklaridan foydalanish afzal. Sunrise kodi juda erta ishlaydi va kichik, himoyaviy hamda bog‘liqliksiz bo‘lib qolishi kerak.
Fayl nomlash qoidasi
Nomi ultimate-multisite- bilan boshlanadigan addon katalogida sunrise.php nomli PHP fayl yarating:
wp-content/plugins/ultimate-multisite-example-addon/sunrise.php
Yuklagich pluginlar katalogini ushbu namuna bo‘yicha skanerlaydi:
wp-content/plugins/ultimate-multisite-*/sunrise.php
Mos keladigan fayllar addon yo‘li bo‘yicha alifbo tartibida yuklanadi.
Faylni qayerga joylashtirish kerak
Faylni sunrise xatti-harakatiga egalik qiladigan addonning ildiz katalogiga joylashtiring:
wp-content/
└── plugins/
└── ultimate-multisite-example-addon/
├── ultimate-multisite-example-addon.php
└── sunrise.php
Skanerlash joriy WP_PLUGIN_DIR qiymatiga emas, WP_CONTENT_DIRga nisbatan aniqlanadi. Bu multi-tenancy yoki boshqa erta ishga tushirish kodi sunrise vaqtida plugin katalogi konstantalarini o‘zgartirganda aniqlashni barqaror saqlaydi.
Yaratilgan wp-content/sunrise.php faylini bevosita tahrirlamang. Yuklagich maxsus kodga Ultimate Multisite o‘rnatadigan va yangilaydigan asosiy sunrise faylini fork qilmasdan sunrise xatti-harakatini kengaytirish imkonini beradi.
Mavjud hooklar va filterlar
Addon sunrise fayllari Ultimate Multisite domen xaritalash yuklangandan keyin va WordPress ms_loadedni ishga tushirishidan oldin ishlaydi. Bu paytda sunrise fayli quyidagilarni qila oladi:
- read or override
$current_siteand$current_blog; - access
$wpdbafter database configuration has loaded; - kerak bo‘lganda
BLOG_ID_CURRENT_SITEkabi sunrise-vaqti konstantalarini aniqlash; - Ultimate Multisite sunrise yordamchi holatini, jumladan multi-tenancy integratsiyalari ishlatadigan yo‘naltirish holatini o‘qish.
Ultimate Multisite o‘zining sunrise yuklagichi tugagandan so‘ng wu_sunrise_loadedni ishga tushiradi. Bu amaldan sunrise ishga tushirish yakunlangandan keyin ishlashi kerak bo‘lgan, lekin baribir sunrise hayot sikliga tegishli kod uchun foydalaning.
Faqat sunrise bosqichida allaqachon yuklangan funksiyalarni chaqiring. Ma’lumotlar bazasiga og‘ir ishlar, shablon renderlash, HTTP so‘rovlari va odatiy plugin yuklanish tartibi yakunlangan deb taxmin qiladigan koddan saqlaning.
Minimal misol
<?php
/**
* Sunrise extension for a custom host integration.
*/
if (! defined('ABSPATH')) {
exit;
}
if (isset($current_blog) && $current_blog instanceof stdClass) {
// Adjust early routing or constants before ms_loaded.
}
Faylni joylashtirgandan so‘ng, ikkala yo‘l ham to‘g‘ri ishga tushayotganini tasdiqlash uchun xaritalangan domen va xaritalanmagan asosiy-sayt URLini yuklang.