PHP code example of pinkcrab / perique-plugin-lifecycle
1. Go to this page and download the library: Download pinkcrab/perique-plugin-lifecycle library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
pinkcrab / perique-plugin-lifecycle example snippets
// file ../wp-content/plugins/acme_plugin/plugin.php
// Boot the app as normal
$app = (new App_Factory())
->default_setup()
->module(
Plugin_Life_Cycle::class,
fn(Plugin_Life_Cycle $module): Plugin_Life_Cycle => $module
->plugin_base_file(__FILE__) // Optional
->event(SomeEvent::class)
->event('Foo\Some_Class_Name')
)
->boot();
class Create_Option_On_Activation implements Activation {
public function run(): void{
update_option('plugin_activated', true);
}
}
class Update_Option_On_Deactivation implements Deactivation {
public function run(): void{
try{
update_option('plugin_activated', false);
} catch( $th ){
Something::send_some_error_email("Deactivation event 'FOO' threw exception during run()", $th->getMessage());
}
}
}
class Delete_Option_On_Uninstall implements Uninstall {
public function run(): void{
try{
delete_option('plugin_activated');
} catch( $th ){
// Do something rather than let it be silently caught above!
}
}
}