Lisäosan Sunrise-tiedoston lataaja
Ultimate Multisite 2.8.0 lisää sunrise-laajennuslataajan lisäosille ja mukautetuille MU-plugin-integraatioille, joiden täytyy suorittua WordPressin sunrise-käynnistyksen aikana muokkaamatta luotua wp-content/sunrise.php-tiedostoa.
Milloin sitä käytetään
Käytä sunrise-laajennusta, kun integraatiosi täytyy suorittua ennen tavallisten pluginien lataamista, kuten mukautetussa verkkotunnusten reitityksessä, isäntäkohtaisessa pyyntöjen käsittelyssä tai varhaisissa verkon käynnistyksen säädöissä.
Tavallisissa integraatioissa suosi tavallisia WordPress-plugineja, MU-plugineja ja dokumentoituja Ultimate Multisite -koukkuja. Sunrise-koodi suoritetaan hyvin aikaisin, ja sen tulee pysyä pienenä, varovaisena ja riippuvuuksista vapaana.
Tiedoston nimeämiskäytäntö
Luo PHP-tiedosto nimeltä sunrise.php lisäosahakemistoon, jonka nimi alkaa muodolla ultimate-multisite-:
wp-content/plugins/ultimate-multisite-example-addon/sunrise.php
Lataaja käy plugins-hakemiston läpi tämän mallin varalta:
wp-content/plugins/ultimate-multisite-*/sunrise.php
Vastaavat tiedostot ladataan aakkosjärjestyksessä lisäosan polun mukaan.
Mihin tiedosto sijoitetaan
Sijoita tiedosto sen lisäosan juurihakemistoon, joka omistaa sunrise-toiminnan:
wp-content/
└── plugins/
└── ultimate-multisite-example-addon/
├── ultimate-multisite-example-addon.php
└── sunrise.php
Haku ratkaistaan suhteessa WP_CONTENT_DIR-arvoon, ei WP_PLUGIN_DIR-arvon nykyiseen arvoon. Tämä pitää löytämisen vakaana, kun moniasiakkuus tai muu varhainen käynnistyskoodi muuttaa plugin-hakemistovakioita sunrise-vaiheen aikana.
Älä muokkaa luotua wp-content/sunrise.php-tiedostoa suoraan. Lataaja antaa mukautetun koodin laajentaa sunrise-toimintaa ilman, että haaroitetaan Ultimate Multisite -asentamaa ja päivittämää ytimen sunrise-tiedostoa.
Käytettävissä olevat koukut ja suodattimet
Lisäosan sunrise-tiedostot suoritetaan sen jälkeen, kun Ultimate Multisite -verkkotunnusmääritys on latautunut, ja ennen kuin WordPress suorittaa ms_loaded-toiminnon. Tässä vaiheessa sunrise-tiedosto voi:
- read or override
$current_siteand$current_blog; - access
$wpdbafter database configuration has loaded; - määritellä sunrise-vaiheen vakioita, kuten
BLOG_ID_CURRENT_SITE, tarvittaessa; - lukea Ultimate Multisite -sunrise-aputilaa, mukaan lukien reititystila, jota moniasiakkuusintegraatiot käyttävät.
Ultimate Multisite suorittaa wu_sunrise_loaded-toiminnon sen jälkeen, kun sen sunrise-lataaja on valmis. Käytä kyseistä toimintoa koodille, jonka tulee suorittua sunrise-käynnistyksen valmistuttua mutta joka kuuluu edelleen sunrise-elinkaareen.
Kutsu vain funktioita, jotka on jo ladattu sunrise-vaiheessa. Vältä tietokantaraskasta työtä, mallien renderöintiä, HTTP-pyyntöjä ja koodia, joka olettaa tavallisen pluginien latausjärjestyksen valmistuneen.
Minimaalinen esimerkki
<?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.
}
Kun olet ottanut tiedoston käyttöön, lataa määritetty verkkotunnus ja määrittämätön pääsivuston URL varmistaaksesi, että molemmat polut käynnistyvät edelleen oikein.