PluginProbe ʕ •ᴥ•ʔ
ShopEngine Elementor WooCommerce Builder Addon – All in One WooCommerce Solution / 2.4.0
ShopEngine Elementor WooCommerce Builder Addon – All in One WooCommerce Solution v2.4.0
4.9.1 4.9.0 2.0.0 2.1.0 2.2.0 2.2.1 2.2.2 2.3.0 2.4.0 2.5.0 2.5.1 3.0.0 3.1.0 3.1.1 4.0.0 4.0.1 4.1.0 4.1.1 4.2.0 4.2.1 4.3.0 4.3.1 4.4.0 4.5.0 4.5.1 4.6.0 4.6.1 4.6.2 4.6.3 4.6.4 4.6.5 4.6.6 4.6.7 4.6.8 4.6.9 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.7.5 4.7.6 4.7.7 4.7.8 4.7.9 4.8.0 4.8.1 4.8.2 4.8.3 4.8.4 4.8.5 4.8.6 4.8.7 4.8.8 4.8.9 trunk 0.1.2-beta 0.1.3-beta 0.1.4-beta 1.0.0 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.2.1 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.5.0 1.5.1 1.6.0 1.6.1 1.7.0 1.8.0 1.8.1 1.9.0
shopengine / compatibility / migrations / db-process.php
shopengine / compatibility / migrations Last commit date
db-process.php 3 years ago migration.php 3 years ago temp-migration.php 3 years ago
db-process.php
42 lines
1 <?php
2 namespace ShopEngine\Compatibility\Migrations;
3 defined('ABSPATH') || exit;
4 class Db_Process{
5 private $widget_names;
6 private $new_widget_names;
7 private $metadata;
8
9 public function __construct(){
10 $this->set_widget_names();
11 $this->process_post_meta_data();
12
13 foreach($this->metadata as $data){
14 $this->migrate_metadata($data);
15 }
16 }
17
18 private function migrate_metadata($data){
19 $new_meta_value = str_replace($this->widget_names, $this->new_widget_names, $data->meta_value);
20
21 global $wpdb;
22 $update = ['meta_value' => $new_meta_value];
23 $where = ['meta_id' => $data->meta_id];
24 $wpdb->update($wpdb->postmeta , $update, $where);
25 }
26
27 private function process_post_meta_data(){
28 global $wpdb;
29 $this->metadata = $wpdb->get_results ( "
30 SELECT *
31 FROM $wpdb->postmeta
32 WHERE meta_key = '_elementor_data'
33 " );
34 }
35
36 private function set_widget_names(){
37 $names = array_keys(\ShopEngine\Core\Register\Widget_List::instance()->get_list());
38
39 $this->widget_names = preg_filter('/^.*$/', '"widgetType":"$0"', $names);
40 $this->new_widget_names = preg_filter('/^.*$/', '"widgetType":"shopengine-$0"', $names);
41 }
42 }