| @@ -36,10 +36,19 @@ | ||
| 36 | 36 | `updated_at` TIMESTAMP NULL, |
| 37 | 37 | INDEX `{$indexPrefix}_mt_is_active` (`is_active`), |
| 38 | 38 | INDEX `{$indexPrefix}_mto_user_id` (`user_id`), |
| 39 | 39 | INDEX `{$indexPrefix}_mto_media_key` (`media_key`), |
| 40 | - INDEX `{$indexPrefix}_mto_feed_id` (`feed_id` ) | |
| 40 | + INDEX `{$indexPrefix}_mto_feed_id` (`feed_id`), | |
| 41 | + INDEX `{$indexPrefix}obj_src_active` (`object_source`, `is_active`, `id`) | |
| 41 | 42 | ) $charsetCollate;"; |
| 42 | 43 | dbDelta($sql); |
| 44 | + } else { | |
| 45 | + $galleryIndexName = $indexPrefix . 'obj_src_active'; | |
| 46 | + $galleryIndexExists = $wpdb->get_var( | |
| 47 | + $wpdb->prepare("SHOW INDEX FROM {$table} WHERE Key_name = %s", $galleryIndexName) // phpcs:ignore WordPress.DB.DirectDatabaseQuery | |
| 48 | + ); | |
| 49 | + if (!$galleryIndexExists) { | |
| 50 | + $wpdb->query("ALTER TABLE {$table} ADD INDEX `{$galleryIndexName}` (`object_source`, `is_active`, `id`)"); // phpcs:ignore WordPress.DB.DirectDatabaseQuery | |
| 51 | + } | |
| 43 | 52 | } |
| 44 | 53 | } |
| 45 | 54 | } |