PluginProbe
WPFunnels – Funnel Builder for WooCommerce with Checkout & One Click Upsell / trunk
WPFunnels – Funnel Builder for WooCommerce with Checkout & One Click Upsell vtrunk
3.13.1 3.13.0 3.12.13 3.12.12 3.12.11 3.12.10 3.12.9 3.12.8 3.12.7 3.12.6 3.12.5 3.12.4 3.12.3 3.12.1 3.12.2 3.12.0 3.11.1 3.11.0 3.10.9 3.10.8 3.10.7 3.10.6 2.8.16 2.8.17 2.8.18 All 259 releases
wpfunnels / admin / import-export / batch-processing / bricks / class-wpfnl-bricks-source.php

class-wpfnl-bricks-source.php in WPFunnels – Funnel Builder for WooCommerce with Checkout & One Click Upsell trunk, at admin/import-export/batch-processing/bricks/class-wpfnl-bricks-source.php

182 lines 5.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Bricks source
4 *
5 * @package WPFunnels\Batch\Bricks
6 */
7
8 namespace WPFunnels\Batch\Bricks;
9 use WPFunnels\Importer\Image\Wpfnl_Image_Importer;
10
11 /**
12 * Bricks source
13 *
14 * @package
15 */
16 class Wpfnl_Bricks_Source {
17
18
19 /**
20 * Import single template
21
22 * @param string $step_id Funnel Step Id.
23 *
24 * @return array|int|void|\WP_Error
25 *
26 * @since 3.3.2
27 */
28 public function import_single_template( $step_id ) {
29 if( ! $step_id ) {
30 return;
31 }
32 $bricks_data = get_post_meta( $step_id, '_bricks_page_content_2', true );
33 if( empty($bricks_data) ) {
34 return;
35 }
36 $bricks_data = $this->find_replace_images( $bricks_data );
37 update_post_meta( $step_id, '_bricks_page_content_2', $bricks_data );
38
39 }
40
41 /**
42 * Find and replace images
43 *
44 * @param array $array Array of data.
45 *
46 * @return array
47 * @since 3.3.2
48 */
49 public function find_replace_images($array) {
50 if ( ! is_array( $array ) ) {
51 return $array;
52 }
53
54 foreach ($array as $key => &$value) {
55 if (is_array($value)) {
56 if( isset($value['settings']['_background']['image']) ){
57 if( isset($value['settings']['_background']['image']['url']) ){
58 $image_url = $value['settings']['_background']['image']['url'];
59 if ( ! empty( $image_url ) ) {
60 $image = array(
61 'url' => $image_url,
62 'id' => 0,
63 );
64 $saved_image = Wpfnl_Image_Importer::get_instance()->import( $image );
65 if ( $saved_image ) {
66 $value['settings']['_background']['image']['url'] = $saved_image['url'];
67 $value['settings']['_background']['image']['id'] = $saved_image['id'];
68 }
69 }
70 }
71 if( isset($value['settings']['_background']['image']['full']) ){
72 $image_url = $value['settings']['_background']['image']['full'];
73 if ( ! empty( $image_url ) ) {
74 $image = array(
75 'url' => $image_url,
76 'id' => 0,
77 );
78 $saved_image = Wpfnl_Image_Importer::get_instance()->import( $image );
79 if ( $saved_image ) {
80 $value['settings']['_background']['image']['full'] = $saved_image['url'];
81 $value['settings']['_background']['image']['id'] = $saved_image['id'];
82 }
83 }
84 }
85 }
86
87 if (isset($value['name']) && 'image' === $value['name'] ) {
88 if( isset($value['settings']['image']['url']) ){
89 $image_url = $value['settings']['image']['url'];
90 if ( ! empty( $image_url ) ) {
91 $image = array(
92 'url' => $image_url,
93 'id' => 0,
94 );
95 $saved_image = Wpfnl_Image_Importer::get_instance()->import( $image );
96 if ( $saved_image ) {
97 $value['settings']['image']['url'] = $saved_image['url'];
98 $value['settings']['image']['id'] = $saved_image['id'];
99 }
100 }
101 }
102 if( isset($value['settings']['image']['full']) ){
103 $image_url = $value['settings']['image']['full'];
104 if ( ! empty( $image_url ) ) {
105 $image = array(
106 'url' => $image_url,
107 'id' => 0,
108 );
109 $saved_image = Wpfnl_Image_Importer::get_instance()->import( $image );
110 if ( $saved_image ) {
111 $value['settings']['image']['full'] = $saved_image['url'];
112 $value['settings']['image']['id'] = $saved_image['id'];
113 }
114 }
115 }
116
117 }
118 if (isset($value['name']) && 'logo' === $value['name'] ) {
119 if( isset($value['settings']['logo']['url']) ){
120 $logo_url = $value['settings']['logo']['url'];
121 if ( ! empty( $logo_url ) ) {
122 $image = array(
123 'url' => $logo_url,
124 'id' => 0,
125 );
126 $saved_image = Wpfnl_Image_Importer::get_instance()->import( $image );
127 if ( $saved_image ) {
128 $value['settings']['logo']['url'] = $saved_image['url'];
129 $value['settings']['logo']['id'] = $saved_image['id'];
130 }
131 }
132 }
133 if( isset($value['settings']['logo']['full']) ){
134 $logo_url = $value['settings']['logo']['full'];
135 if ( ! empty( $logo_url ) ) {
136 $image = array(
137 'url' => $logo_url,
138 'id' => 0,
139 );
140 $saved_image = Wpfnl_Image_Importer::get_instance()->import( $image );
141 if ( $saved_image ) {
142 $value['settings']['logo']['full'] = $saved_image['url'];
143 $value['settings']['logo']['id'] = $saved_image['id'];
144 }
145 }
146 }
147 if( isset($value['settings']['logoInverse']['url']) ){
148 $logo_url = $value['settings']['logoInverse']['url'];
149 if ( ! empty( $logo_url ) ) {
150 $image = array(
151 'url' => $logo_url,
152 'id' => 0,
153 );
154 $saved_image = Wpfnl_Image_Importer::get_instance()->import( $image );
155 if ( $saved_image ) {
156 $value['settings']['logoInverse']['url'] = $saved_image['url'];
157 $value['settings']['logoInverse']['id'] = $saved_image['id'];
158 }
159 }
160 }
161 if( isset($value['settings']['logoInverse']['full']) ){
162 $logo_url = $value['settings']['logoInverse']['full'];
163 if ( ! empty( $logo_url ) ) {
164 $image = array(
165 'url' => $logo_url,
166 'id' => 0,
167 );
168 $saved_image = Wpfnl_Image_Importer::get_instance()->import( $image );
169 if ( $saved_image ) {
170 $value['settings']['logoInverse']['full'] = $saved_image['url'];
171 $value['settings']['logoInverse']['id'] = $saved_image['id'];
172 }
173 }
174 }
175
176 }
177 }
178 }
179 return $array;
180 }
181 }
182