Kuidas kontrollida, kas WordPressi pistikprogramm on võrgus või ühel saidil aktiivne
Teema või pistikprogrammi arendamisel peame mõnikord kontrollima, kas teatud kolmanda osapoole pistikprogramm on kasutamiseks saadaval. Siit saate teada lihtsa viisi, kuidas tuvastada mitte ainult seda, kas pistikprogramm on aktiivne ühel saidil, vaid ka seda, kas see on üle võrgu lubatud.
Ülevaade
WordPress salvestab aktiivsete pistikprogrammide loendi andmebaasi erinevates valikutes, olenemata sellest, kas need on kogu võrgus lubatud pistikprogrammid või võrgu ühel saidil lubatud pistikprogrammid:
- active_sitewide_plugins: sisaldab pistikprogramme, mis on võrgus lubatud
- active_plugins: sisaldab võrgu praegusel saidil lubatud pluginaid.
Funktsiooni definitsioon
Selle abil saame kodeerida midagi sellist, et kontrollida, kas teatud pistikprogramm on võrgus või ühel saidil lubatud:
if (! function_exists( 'elio_is_plugin_active')) {
function elio_is_plugin_active( $plugin = '') {
$network_active = false;
if (is_multisite()) {
$plugins = get_site_option( 'active_sitewide_plugins' );
if (isset( $plugins[$plugin])) $network_active = true;
}
return in_array( $plugin, get_option( 'active_plugins')) || $network_active;
}
}
Näiteks kontrollime, kas pistikprogramm Jetpack on aktiivne. Nüüd saate kasutada meie kirjutatud funktsiooni järgmiselt, edastades parameetrina pistikprogrammi juurkataloogi, jetpack ja pistikprogrammi põhifaili jetpack.php:
Vaatame veel ühte näidet WooCommerce’i pistikprogrammiga:
Selle lihtsa meetodi abil olete kindla pistikprogrammiga töötamiseks mõeldud funktsioonide lisamisel turvaline, kuna saate alati kontrollida, kas pistikprogramm on lubatud.