PluginProbe
Depicter — Popup & Slider Builder / 1.9.2
Depicter — Popup & Slider Builder v1.9.2
4.8.1 trunk 1.0.0 1.1.0 1.1.2 1.1.4 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.3.0 1.3.1 1.3.2 1.3.3 1.3.5 1.3.8 1.5.0 1.5.1 1.5.2 1.5.5 1.6.0 1.6.1 1.6.2 1.7.0 All 76 releases
← All changes | app/src/Database/DatabaseServiceProvider.php +31 -1 1.3.31.9.2 View file →
@@ -33,8 +33,9 @@
33 33 * {@inheritDoc}
34 34 */
35 35 public function bootstrap( $container ) {
36 36 register_activation_hook( DEPICTER_PLUGIN_FILE, [ $this, 'activate' ] );
37 + add_action( 'wp_insert_site', [ $this, 'activateSingle' ] );
37 38 }
38 39
39 40 /**
40 41 * Plugin activation.
@@ -40,9 +41,38 @@
40 41 * Plugin activation.
41 42 *
42 43 * @return void
43 44 */
44 - public function activate() {
45 + public function activate( $network_wide ) {
46 + if ( $network_wide ) {
47 + $sites = get_sites();
48 + foreach( $sites as $site ) {
49 + $this->activateSingle( $site );
50 + }
51 + } else {
52 + $this->migrate();
53 + }
54 + }
55 +
56 + /**
57 + * Plugin activation on a site
58 + *
59 + * @param \WP_Site $site
60 + *
61 + * @return void
62 + */
63 + public function activateSingle( $site ) {
64 + switch_to_blog( $site->blog_id );
65 + $this->migrate();
66 + restore_current_blog();
67 + }
68 +
69 + /**
70 + * Create or update plugin tables
71 + *
72 + * @return void
73 + */
74 + public function migrate() {
45 75 \Depicter::resolve( 'depicter.database.migration' )->migrate(true);
46 76 }
47 77
48 78 }