PluginProbe
Export All Posts, Products, Orders & Users | WP Ultimate Exporter | WordPress CSV Export / 2.10
Export All Posts, Products, Orders & Users | WP Ultimate Exporter | WordPress CSV Export v2.10
3.0 2.24.2 2.24.1 1.7.2 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9 2.0 2.0.1 2.1 2.1.1 2.1.2 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.16.1 2.16.2 All 96 releases
wp-ultimate-exporter / exportExtensions / PostExport.php

PostExport.php in Export All Posts, Products, Orders & Users | WP Ultimate Exporter | WordPress CSV Export 2.10, at exportExtensions/PostExport.php

1,956 lines 83.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * WP Ultimate Exporter plugin file.
4 *
5 * Copyright (C) 2010-2020, Smackcoders Inc - info@smackcoders.com
6 */
7
8 namespace Smackcoders\SMEXP;
9
10 if ( ! defined( 'ABSPATH' ) )
11 exit; // Exit if accessed directly
12
13 /**
14 * Class PostExport
15 * @package Smackcoders\WCSV
16 */
17 class PostExport extends ExportExtension{
18
19 protected static $instance = null,$mapping_instance,$export_handler,$export_instance;
20 public $offset = 0;
21 public $limit;
22 public $totalRowCount;
23 public static function getInstance() {
24 if ( null == self::$instance ) {
25 self::$instance = new self;
26 self::$export_instance = ExportExtension::getInstance();
27 }
28 return self::$instance;
29 }
30
31 /**
32 * PostExport constructor.
33 */
34 public function __construct() {
35 $this->plugin = Plugin::getInstance();
36 }
37
38 /**
39 * Get records based on the post types
40 * @param $module
41 * @param $optionalType
42 * @param $conditions
43 * @return array
44 */
45 public function getRecordsBasedOnPostTypes ($module, $optionalType, $conditions ,$offset , $limit ,$headers = '') {
46 global $wpdb,$sitepress;
47 if($module == 'JetBooking'){
48 if(!empty($conditions['specific_jetbooking_status']['is_check']) && $conditions['specific_jetbooking_status']['is_check'] == 'true' && !empty($conditions['specific_jetbooking_status']['status']) ) {
49 $jet_booking_status = $conditions['specific_jetbooking_status']['status'];
50 $bookings = jet_abaf_get_bookings( ['status' => $jet_booking_status,'return' => 'arrays']);
51 $post_ids = wp_list_pluck($bookings, 'ID');
52 self::$export_instance->totalRowCount = count($post_ids);
53 return $post_ids;
54 }else{
55 $bookings = jet_abaf_get_bookings( [ 'return' => 'arrays' ] );
56 $post_ids = wp_list_pluck($bookings, 'ID');
57 self::$export_instance->totalRowCount = count($post_ids);
58 return $post_ids;
59 }
60 }
61 if($module == 'CustomPosts' && $optionalType == 'nav_menu_item'){
62 $get_menu_id = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}terms AS t LEFT JOIN {$wpdb->prefix}term_taxonomy AS tt ON tt.term_id = t.term_id WHERE tt.taxonomy = 'nav_menu' ", ARRAY_A);
63 $get_menu_arr = array_column($get_menu_id, 'term_id');
64 self::$export_instance->totalRowCount = count($get_menu_arr);
65 return $get_menu_arr;
66 }
67 if($module == 'CustomPosts' && $optionalType == 'widgets'){
68 $get_widget_id = $wpdb->get_row("SELECT option_id FROM {$wpdb->prefix}options where option_name = 'widget_recent-posts' ", ARRAY_A);
69 self::$export_instance->totalRowCount = 1;
70 return $get_widget_id;
71 }
72 if($module == 'CustomPosts') {
73 $module = $optionalType;
74 } elseif ($module == 'WooCommerceOrders') {
75 $module = 'shop_order';
76 }
77 elseif ($module == 'WooCommerceCoupons') {
78 $module = 'shop_coupon';
79 }
80 elseif ($module == 'WooCommerceRefunds') {
81 $module = 'shop_order_refund';
82 }
83 elseif ($module == 'WooCommerceVariations') {
84 if(is_plugin_active('polylang/polylang.php') || is_plugin_active('polylang-pro/polylang.php') || is_plugin_active('polylang-wc/polylang-wc.php')){
85 $module = 'product_variation';
86 $extracted_ids = "select DISTINCT ID from {$wpdb->prefix}posts";
87 $extracted_ids .= " where post_type = '$module'";
88 $extracted_ids .= "and post_status in ('publish','draft','future','private','pending') AND post_parent!=0";
89 $extracted_id = $wpdb->get_col($extracted_ids);
90 $extracted_ids =array();
91 foreach($extracted_id as $ids){
92
93 $parent_id = $wpdb->get_var("SELECT post_parent FROM {$wpdb->prefix}posts where ID=$ids");
94
95 $post_status =$wpdb->get_var("SELECT post_status FROM {$wpdb->prefix}posts where ID=$parent_id");
96 if(!empty($post_status )){
97 if($post_status !='trash' && $post_status != 'inherit'){
98 $extracted_ids [] =$ids;
99 }
100
101 }
102 }
103 self::$export_instance->totalRowCount = count($extracted_ids);
104 return array_reverse($extracted_ids);
105 }
106 else{
107 $product_statuses = array('publish', 'draft', 'future', 'private', 'pending');
108 $products = wc_get_products(array('status' => $product_statuses ,'limit' => -1));
109 $variable_product_ids = [];
110 foreach($products as $product){
111 if ($product->is_type('variable')) {
112 $variable_product_ids[] = $product->get_id();
113 }
114 }$variation_ids = [];
115 foreach($variable_product_ids as $variable_product_id){
116 $variable_product = wc_get_product($variable_product_id);
117 $variation_ids[] = $variable_product->get_children();
118 }
119 $extracted_ids = [];
120 foreach ($variation_ids as $v_ids) {
121 foreach ($v_ids as $v_id) {
122 $extracted_ids[] = $v_id;
123 }
124 }
125 self::$export_instance->totalRowCount = count($extracted_ids);
126 return array_reverse($extracted_ids);
127 }
128 }
129 elseif($module == 'WPeCommerceCoupons'){
130 $module = 'wpsc-coupon';
131 }
132 else {
133 $module = self::import_post_types($module);
134 }
135
136 $get_post_ids = "select DISTINCT ID from {$wpdb->prefix}posts";
137 $get_post_ids .= " where post_type = '$module'";
138
139 /**
140 * Check for specific status
141 */
142 if($module == 'product' && is_plugin_active('woocommerce/woocommerce.php')){ //
143 if ($sitepress == null && !is_plugin_active('polylang/polylang.php') && !is_plugin_active('polylang-pro/polylang.php') && !is_plugin_active('polylang-wc/polylang-wc.php') && !is_plugin_active('woocommerce-multilingual/wpml-woocommerce.php')) {
144 if(!empty($conditions['specific_period']['is_check']) && $conditions['specific_period']['is_check'] == 'true') {
145 if($conditions['specific_period']['from'] == $conditions['specific_period']['to']){
146 $from_date = $conditions['specific_period']['from'];
147 $product_statuses = array('publish', 'draft', 'future', 'private', 'pending');
148 $args = array('date_query' => array(array('year' => date( 'Y', strtotime( $from_date ) ),'month' => date( 'm', strtotime( $from_date ) ),'day' => date( 'd', strtotime( $from_date ) ),),),'status' => $product_statuses,'numberposts' => -1,'orderby' => 'date');
149 }else{
150 $from_date = $conditions['specific_period']['from'] ?? null;
151 $to_date = $conditions['specific_period']['to'] ?? null;
152 $product_statuses = array('publish', 'draft', 'future', 'private', 'pending');
153 $args = array('date_query' => array(array('after' => $from_date,'before' => $to_date,'inclusive' => true,),),'status' => $product_statuses,'numberposts' => -1,'orderby' => 'date');
154 }
155 $products_count = wc_get_products($args);
156 }
157 else{
158 $product_statuses = array('publish', 'draft', 'future', 'private', 'pending');
159 $products_count = wc_get_products(array('status' => $product_statuses, 'numberposts' => -1 ,'orderby' => 'date'));
160 }
161 $product_ids = array();
162 if(!empty($products_count)){
163 $ids = array();
164 foreach ($products_count as $my_product) {
165 $ids[] = $my_product->get_id();
166 }
167 self::$export_instance->totalRowCount = count($ids); //get total count
168 $product_ids = !empty($ids) ? array_slice($ids, $offset, $limit) : [];
169 }
170 return $product_ids;
171 }else{
172 //when polylang wpml active
173 $products = "select DISTINCT ID from {$wpdb->prefix}posts";
174 $products .= " where post_type = '$module'";
175 if(!empty($conditions['specific_period']['is_check']) && $conditions['specific_period']['is_check'] == 'true') {
176 $products .= " and post_status in ('publish','draft','private','pending') ";
177 if($conditions['specific_period']['from'] == $conditions['specific_period']['to']){
178 $products .= " and DATE(post_date) ='".$conditions['specific_period']['from']."'";
179 }else{
180 $products .= " and post_date >= '" . $conditions['specific_period']['from'] . "' and post_date <= '" . $conditions['specific_period']['to'] . " 23:00:00'";
181 }
182 }
183 else {
184 $products .= " and post_status in ('publish','draft','future','private','pending') ORDER by post_date";
185 }
186 $products = $wpdb->get_col($products);
187 self::$export_instance->totalRowCount = count($products);
188 $products_ids = !empty($products) ? array_slice($products, $offset, $limit) : [];
189 return $products_ids;
190 }
191 }
192 elseif($module == 'shop_order' && is_plugin_active('woocommerce/woocommerce.php')){
193 if($sitepress == null && !is_plugin_active('polylang/polylang.php') && !is_plugin_active('polylang-pro/polylang.php') && !is_plugin_active('polylang-wc/polylang-wc.php') && !is_plugin_active('woocommerce-multilingual/wpml-woocommerce.php')){
194 if(!empty($conditions['specific_period']['is_check']) && $conditions['specific_period']['is_check'] == 'true') { //Specific period ONLY TRUE
195 if($conditions['specific_period']['from'] == $conditions['specific_period']['to']){
196 $from_date = $conditions['specific_period']['from'];
197 $status = array('wc-completed', 'wc-cancelled', 'wc-on-hold', 'wc-processing', 'wc-pending');
198 $args = array('date_query' => array(array('year' => date('Y', strtotime($from_date)),'month' => date('m', strtotime($from_date)),'day' => date('d', strtotime($from_date)),),),'status' => $status,'numberposts' => -1,'orderby' => 'date',);
199 }else{
200 $from_date = $conditions['specific_period']['from'] ?? null;
201 $to_date = $conditions['specific_period']['to'] ?? null;
202 $status = array('wc-completed', 'wc-cancelled', 'wc-on-hold', 'wc-processing', 'wc-pending');;
203 $args = array('date_query' => array(array('after' => $from_date,'before'=> $to_date,'inclusive' => true,),),'status' => $status,'numberposts' => -1,'orderby' => 'date');
204 }
205 $orders = wc_get_orders($args);
206 }
207 else{
208 $order_statuses = array('wc-completed', 'wc-cancelled', 'wc-on-hold', 'wc-processing', 'wc-pending');
209 $orders = wc_get_orders(array('status' => $order_statuses,'numberposts' => -1,'orderby' => 'date','order' => 'ASC'));
210 }
211 $get_order_ids = array();
212 if(!empty($orders)){
213 $get_post_ids = array();
214 foreach($orders as $my_orders){
215 $get_post_ids[] = $my_orders->get_id();
216 }
217 self::$export_instance->totalRowCount = count($get_post_ids);
218 $get_order_ids = !empty($get_post_ids) ? array_slice($get_post_ids, $offset, $limit) : [];
219 }
220 return $get_order_ids;
221 }
222 else{//polylang or wpml active
223 $order_statuses = array('wc-completed', 'wc-cancelled', 'wc-on-hold', 'wc-processing', 'wc-pending');
224 $orders = wc_get_orders(array('status' => $order_statuses,'numberposts' => -1,'orderby' => 'date','order' => 'ASC'));
225 $get_post_ids = array();
226 foreach($orders as $my_orders){
227 $get_post_ids[] = $my_orders->get_id();
228 }
229 foreach($get_post_ids as $ids){
230 $module =$wpdb->get_var("SELECT post_type FROM {$wpdb->prefix}posts where id=$ids");
231 }
232 if($module == 'shop_order_placehold'){//post_status shop_order_placehold!
233 $orders = "select DISTINCT p.ID from {$wpdb->prefix}posts as p inner join {$wpdb->prefix}wc_orders as wc ON p.ID=wc.id";
234 $orders.= " where p.post_type = '$module'";
235 if(!empty($conditions['specific_period']['is_check']) && $conditions['specific_period']['is_check'] == 'true') {
236 $orders .= " and wc.status in ('wc-completed', 'wc-cancelled', 'wc-on-hold', 'wc-processing', 'wc-pending')";
237 if($conditions['specific_period']['from'] == $conditions['specific_period']['to']){
238 $orders .= " and DATE(p.post_date) ='".$conditions['specific_period']['from']."'";
239 }else{
240 $orders .= " and p.post_date >= '" . $conditions['specific_period']['from'] . "' and p.post_date <= '" . $conditions['specific_period']['to'] . " 23:00:00'";
241 }
242 }
243 if(empty($conditions['specific_status']['status']) && empty($conditions['specific_period']['is_check'])) {
244 $orders .= " and wc.status in ('wc-completed', 'wc-cancelled', 'wc-on-hold', 'wc-processing', 'wc-pending') ORDER BY post_date";
245 }
246 }
247 else{//post_status shop_order!
248 $orders = "select DISTINCT ID from {$wpdb->prefix}posts";
249 $orders.= " where post_type = '$module'";
250 if(!empty($conditions['specific_period']['is_check']) && $conditions['specific_period']['is_check'] == 'true') {
251 $orders .= " and post_status in ('wc-completed', 'wc-cancelled', 'wc-on-hold', 'wc-processing', 'wc-pending')";
252 if($conditions['specific_period']['from'] == $conditions['specific_period']['to']){
253 $orders .= " and DATE(post_date) = '". $conditions['specific_period']['from'] . "'";
254 }else{
255 $orders .= " and post_date >= '" . $conditions['specific_period']['from'] . "' and post_date <= '" . $conditions['specific_period']['to'] . " 23:00:00'";
256 }
257 }
258 else {
259 $orders .= " and post_status in ('wc-completed', 'wc-cancelled', 'wc-on-hold', 'wc-processing', 'wc-pending')";
260 }
261 }
262 $orders = $wpdb->get_col($orders);
263 self::$export_instance->totalRowCount = count($orders);
264 $get_order_ids = !empty($orders) ? array_slice($orders, $offset, $limit) : [];
265 return $get_order_ids;
266 }
267 }elseif ($module == 'shop_coupon') {
268 if(isset($conditions['specific_status']) && !empty($conditions['specific_status']['status'])) {
269 if($conditions['specific_status']['status'] == 'All') {
270 $get_post_ids .= " and post_status in ('publish','draft','pending')";
271 } elseif($conditions['specific_status']['status']== 'Publish') {
272 $get_post_ids .= " and post_status in ('publish')";
273 } elseif($conditions['specific_status']['status'] == 'Draft') {
274 $get_post_ids .= " and post_status in ('draft')";
275 } elseif($conditions['specific_status']['status'] == 'Pending') {
276 $get_post_ids .= " and post_status in ('pending')";
277 }
278 } else {
279 $get_post_ids .= " and post_status in ('publish','draft','pending')";
280 }
281
282 }elseif ($module == 'shop_order_refund') {
283
284 }
285 elseif( $module == 'lp_order'){
286 $get_post_ids .= " and post_status in ('lp-pending', 'lp-processing', 'lp-completed', 'lp-cancelled', 'lp-failed')";
287 }
288 elseif ($module == 'forum') {
289 $get_post_ids .= " and post_status in ('publish','draft','future','private','pending','hidden')";
290 }
291 elseif ($module == 'topic') {
292 $get_post_ids .= " and post_status in ('publish','draft','future','open','pending','closed','spam')";
293 }
294 elseif ($module == 'reply') {
295 $get_post_ids .= " and post_status in ('publish','spam','pending')";
296 }
297 else {
298 if(!empty($conditions['specific_status']['status'])) {
299 if($conditions['specific_status']['status'] == 'All') {
300 $get_post_ids .= " and post_status in ('publish','draft','future','private','pending')";
301 } elseif($conditions['specific_status']['status'] == 'Publish' || $conditions['specific_status']['status'] == 'Sticky') {
302 $get_post_ids .= " and post_status in ('publish')";
303 } elseif($conditions['specific_status']['status'] == 'Draft') {
304 $get_post_ids .= " and post_status in ('draft')";
305 } elseif($conditions['specific_status']['status'] == 'Scheduled') {
306 $get_post_ids .= " and post_status in ('future')";
307 } elseif($conditions['specific_status']['status'] == 'Private') {
308 $get_post_ids .= " and post_status in ('private')";
309 } elseif($conditions['specific_status']['status'] == 'Pending') {
310 $get_post_ids .= " and post_status in ('pending')";
311 } elseif($conditions['specific_status']['status'] == 'Protected') {
312 $get_post_ids .= " and post_status in ('publish') and post_password != ''";
313 }
314 } else {
315 $get_post_ids .= " and post_status in ('publish','draft','future','private','pending')";
316 }
317 }
318 // Check for specific period
319 if(!empty($conditions['specific_period']['is_check']) && $conditions['specific_period']['is_check'] == 'true') {
320 if($conditions['specific_period']['from'] == $conditions['specific_period']['to']){
321 $get_post_ids .= " and post_date >= '" . $conditions['specific_period']['from'] . "'";
322 }else{
323 $get_post_ids .= " and post_date >= '" . $conditions['specific_period']['from'] . "' and post_date <= '" . $conditions['specific_period']['to'] . " 23:00:00'";
324 }
325 }
326 if($module == 'woocommerce')
327 $get_post_ids .= " and pm.meta_key = '_sku'";
328
329 if($module == 'wpcommerce')
330 $get_post_ids .= " and pm.meta_key = '_wpsc_sku'";
331
332 // Check for specific authors
333 if (!empty($conditions['specific_authors']['is_check'] == '1') && !empty($conditions['specific_authors']['author'])) {
334 if (isset($conditions['specific_authors']['author'])) {
335 $author_ids = implode(',', $conditions['specific_authors']['author']);
336 $get_post_ids .= " AND post_author IN ({$author_ids})";
337
338 }
339 }
340
341
342 //WpeCommercecoupons
343 if($module == 'wpsc-coupon'){
344 $get_post_ids = "select DISTINCT ID from {$wpdb->prefix}wpsc_coupon_codes";
345 }
346 //WpeCommercecoupons
347 $get_total_row_count = $wpdb->get_col($get_post_ids);
348 if(!empty($get_total_row_count )){
349 if(!empty($conditions['specific_period']['is_check']) && $conditions['specific_period']['is_check'] == 'true') {
350 if($conditions['specific_period']['from'] == $conditions['specific_period']['to']){
351 $result = array();
352 foreach($get_total_row_count as $result_value){
353 //$get_post_date_time = $wpdb->get_results( $wpdb->prepare("SELECT post_date FROM {$wpdb->prefix}posts WHERE id=$result_value") ,ARRAY_A);
354 $get_post_date_time = $wpdb->get_results("SELECT post_date FROM {$wpdb->prefix}posts WHERE id = $result_value", ARRAY_A);
355 $get_post_date = date("Y-m-d",strtotime($get_post_date_time[0]['post_date'] ));
356 if($get_post_date == $conditions['specific_period']['from']){
357 $get_post_date_value[] = $result_value;
358 }
359 }
360 self::$export_instance->totalRowCount = count($get_post_date_value);
361 $result = $get_post_date_value;
362 }
363 else{
364 self::$export_instance->totalRowCount = count($get_total_row_count);
365 $offset_limit = " order by ID asc limit $offset, $limit";
366 $query_with_offset_limit = $get_post_ids . $offset_limit;
367 $result = $wpdb->get_col($query_with_offset_limit);
368 }
369 }
370 else{
371 self::$export_instance->totalRowCount = count($get_total_row_count);
372 $offset_limit = " order by ID asc limit $offset, $limit";
373 $query_with_offset_limit = $get_post_ids . $offset_limit;
374 $result = $wpdb->get_col($query_with_offset_limit);
375 }
376 }
377 if ($module == 'JetReviews') {
378 // Check if specific review conditions are provided
379 if (!empty($conditions['specific_review_status']['approved'])) {
380 $approved = $conditions['specific_review_status']['approved'];
381 $reviews = $wpdb->get_results(
382 $wpdb->prepare(
383 "SELECT * FROM {$wpdb->prefix}jet_reviews WHERE approved = %d ORDER BY date DESC LIMIT %d OFFSET %d",
384 $approved,
385 $limit,
386 $offset
387 ),
388 ARRAY_A
389 );
390
391 // Collect review IDs
392 foreach ($reviews as $review) {
393 $result[] = $review['id']; // Assuming 'id' is the primary key for reviews
394 }
395
396 self::$export_instance->totalRowCount = !empty($result) ? count($result) : 0;
397 return !empty($result) ? array_slice($result, $offset, $limit) : [];
398 } else {
399 // Fetch all reviews if no specific conditions are set
400 $reviews = $wpdb->get_results(
401 "SELECT * FROM {$wpdb->prefix}jet_reviews ORDER BY date DESC LIMIT {$limit} OFFSET {$offset}",
402 ARRAY_A
403 );
404
405 foreach ($reviews as $review) {
406 $result[] = $review['id'];
407 }
408
409 self::$export_instance->totalRowCount = !empty($result) ? count($result) : 0;
410 return !empty($result) ? array_slice($result, $offset, $limit) : [];
411 }
412 }
413
414 if(is_plugin_active('jet-engine/jet-engine.php')){
415 $get_slug_name = $wpdb->get_results("SELECT slug FROM {$wpdb->prefix}jet_post_types WHERE status = 'content-type'");
416 foreach($get_slug_name as $key=>$get_slug){
417 $value=$get_slug->slug;
418 $optional_type=$value;
419 if($optionalType ==$optional_type){
420 $table_name='jet_cct_'.$optional_type;
421 $get_total_row_count= $wpdb->get_results("SELECT _ID FROM {$wpdb->prefix}$table_name ");
422 self::$export_instance->totalRowCount = count($get_total_row_count);
423 }
424 }
425 }
426
427 // Get sticky post alone on the specific post status
428 if(isset($conditions['specific_period']['is_check']) && isset($conditions['specific_status']['is_check']) && $conditions['specific_status']['is_check'] == 'true') {
429 if(isset($conditions['specific_status']['status']) && $conditions['specific_status']['status'] == 'Sticky') {
430 $get_sticky_posts = get_option('sticky_posts');
431 foreach($get_sticky_posts as $sticky_post_id) {
432 if(in_array($sticky_post_id, $result))
433 $sticky_posts[] = $sticky_post_id;
434 }
435 return $sticky_posts;
436 }
437 }
438 $result = isset($result) ? $result : [];
439 return $result;
440 }
441
442 public function import_post_types($import_type, $importAs = null) {
443 $import_type = trim($import_type);
444 $module = array('Posts' => 'post', 'Pages' => 'page', 'Users' => 'user', 'Comments' => 'comments', 'Taxonomies' => $importAs, 'CustomerReviews' =>'wpcr3_review', 'Categories' => 'categories', 'Tags' => 'tags', 'WooCommerce' => 'product', 'WPeCommerce' => 'wpsc-product','WPeCommerceCoupons' => 'wpsc-product','WooCommerceVariations' => 'product', 'WooCommerceOrders' => 'product', 'WooCommerceCoupons' => 'product', 'WooCommerceRefunds' => 'product', 'CustomPosts' => $importAs);
445 foreach (get_taxonomies() as $key => $taxonomy) {
446 $module[$taxonomy] = $taxonomy;
447 }
448 if(array_key_exists($import_type, $module)) {
449 return $module[$import_type];
450 }
451 else {
452 return $import_type;
453 }
454 }
455
456 /**
457 * Function to export the meta information based on Fetch ACF field information to be export
458 * @param $id
459 * @return mixed
460 */
461 public function getPostsMetaDataBasedOnRecordId ($id, $module, $optionalType) {
462
463 global $wpdb;
464 $typeOftypesField = NULL; $checkRep = NULL; $allacf= NULL; $alltype = NULL; $parent = NULL; $typesf= NULL;$jet_metafields=NULL;
465 if ($module == 'Users') {
466 $query = "SELECT user_id, meta_key, meta_value FROM {$wpdb->prefix}users wp JOIN {$wpdb->prefix}usermeta wpm ON wpm.user_id = wp.ID WHERE meta_key NOT IN ('_edit_lock', '_edit_last') AND ID={$id}";
467 } elseif ($module == 'Categories' || $module == 'Taxonomies' || $module == 'Tags') {
468 $query = "SELECT wp.term_id, meta_key, meta_value FROM {$wpdb->prefix}terms wp JOIN {$wpdb->prefix}termmeta wpm ON wpm.term_id = wp.term_id WHERE meta_key NOT IN ('_edit_lock', '_edit_last') AND wp.term_id = {$id}";
469 } else {
470 $query = "SELECT post_id, meta_key, meta_value FROM {$wpdb->prefix}posts wp JOIN {$wpdb->prefix}postmeta wpm ON wpm.post_id = wp.ID WHERE meta_key NOT IN ('_edit_lock', '_edit_last') AND ID={$id}";
471 }
472
473
474 $get_acf_fields = $wpdb->get_results("SELECT ID, post_excerpt, post_content, post_name, post_parent, post_type FROM {$wpdb->prefix}posts where post_type = 'acf-field'", ARRAY_A);
475
476 $group_unset = array('customer_email', 'product_categories', 'exclude_product_categories');
477
478 if(!empty($get_acf_fields)){
479 foreach ($get_acf_fields as $key => $value) {
480
481 if(!empty($value['post_parent'])){
482 $parent = get_post($value['post_parent']);
483 if(!empty($parent)){
484 if($parent->post_type == 'acf-field'){
485 $allacf[$value['post_excerpt']] = $parent->post_excerpt.'_'.$value['post_excerpt'];
486 }else{
487 $allacf[$value['post_excerpt']] = $value['post_excerpt'];
488 }
489 }else{
490 $allacf[$value['post_excerpt']] = $value['post_excerpt'];
491 }
492 }else{
493 $allacf[$value['post_excerpt']] = $value['post_excerpt'];
494 }
495
496 self::$export_instance->allacf = $allacf;
497
498 $content = unserialize($value['post_content']);
499 $alltype[$value['post_excerpt']] = $content['type'];
500
501 if($content['type'] == 'repeater' || $content['type'] == 'flexible_content'){
502 $checkRep[$value['post_excerpt']] = $this->getRepeater($value['ID']);
503 }else{
504 $checkRep[$value['post_excerpt']] = "";
505 }
506 }
507 }
508
509 self::$export_instance->allpodsfields = $this->getAllPodsFields();
510
511 if($module == 'Categories' || $module == 'Tags' || $module == 'Taxonomies'){
512 self::$export_instance->alltoolsetfields = get_option('wpcf-termmeta');
513 }
514 elseif($module == 'Users'){
515 self::$export_instance->alltoolsetfields = get_option('wpcf-usermeta');
516
517 }
518 else{
519 self::$export_instance->alltoolsetfields = get_option('wpcf-fields');
520 }
521
522 if(!empty(self::$export_instance->alltoolsetfields)){
523 $i = 1;
524 foreach (self::$export_instance->alltoolsetfields as $key => $value) {
525 $typesf[$i] = 'wpcf-'.$key;
526 $typeOftypesField[$typesf[$i]] = $value['type'];
527 $i++;
528 }
529 }
530 $typeOftypesField=isset($typeOftypesField)?$typeOftypesField:'';
531 self::$export_instance->typeOftypesField = $typeOftypesField;
532 self::$export_instance->alltoolsetfields = get_option('wpcf-fields');
533
534 self::$export_instance->typeOftypesField = $typeOftypesField;
535
536 $result = $wpdb->get_results($query);
537
538 if (is_plugin_active('jet-booking/jet-booking.php')) {
539 $manage_units = jet_abaf()->db->get_apartment_units( $id );
540 if(!empty($manage_units)) {
541
542 $titleCounts = [];
543 foreach ($manage_units as $unit) {
544 // Remove any trailing space followed by numbers (e.g., " 1", " 2", " 3") at the end of unit_title
545 $baseTitle = preg_replace('/\s+\d+$/', '', $unit['unit_title']);
546 if (!isset($titleCounts[$baseTitle])) {
547 $titleCounts[$baseTitle] = 0;
548 }
549 $titleCounts[$baseTitle]++;
550 }
551 self::$export_instance->data[$id]['unit_title'] = implode('|', array_keys($titleCounts));
552 self::$export_instance->data[$id]['unit_number'] = implode('|', array_values($titleCounts));
553 }
554 }
555
556 // jeteng fields
557 if(is_plugin_active('jet-engine/jet-engine.php')){
558
559 $jetEnginefields = $wpdb->get_results("SELECT id, meta_fields FROM {$wpdb->prefix}jet_post_types WHERE slug = '$optionalType' AND status IN ('publish','built-in')", ARRAY_A);
560 $jetEnginefields[0]['meta_fields']=isset($jetEnginefields[0]['meta_fields'])?$jetEnginefields[0]['meta_fields']:'';
561
562 $unserializedMeta = maybe_unserialize($jetEnginefields[0]['meta_fields']);
563 $unserializedMeta=isset($unserializedMeta)?$unserializedMeta:'';
564
565 if(is_array($unserializedMeta)){
566 foreach($unserializedMeta as $jet_key => $jetValue){
567 $jetFieldLabel = $jetValue['title'];
568 $jetFieldType = $jetValue['type'];
569 if($jetFieldType != 'repeater' && $jetFieldType != 'media' && $jetFieldType != 'gallery' && $jetFieldType != 'posts' && $jetFieldType != 'html' ){
570 $jetFieldNameArr[] = $jetValue['name'];
571 }
572 else{
573 $jetFieldNameArr[] = $jetValue['name'];
574 $fields=$jetValue['repeater-fields'];
575 if(is_array($fields)){
576 foreach($fields as $repFieldKey => $repFieldVal){
577 $jetFieldName[] = $repFieldVal['name'];
578
579 }
580 }
581 }
582 }
583 }
584
585 if(isset($jetFieldName) && is_array($jetFieldName) ){
586 if(is_array($jetFieldNameArr)){
587 $jetCPTFieldsName=array_merge($jetFieldNameArr,$jetFieldName);
588 }
589 else{
590 $jetCPTFieldsName= $jetFieldName;
591 }
592
593 }
594 else{
595 $jetFieldNameArr = isset($jetFieldNameArr) ? $jetFieldNameArr : '';
596 $jetCPTFieldsName= $jetFieldNameArr;
597 }
598
599 //jeteng metabox fields
600
601 global $wpdb;
602 //$getMetaFields = $wpdb->get_results( $wpdb->prepare("SELECT option_value FROM {$wpdb->prefix}options WHERE option_name=%s",'jet_engine_meta_boxes'),ARRAY_A);
603 $getMetaFields = $wpdb->get_results("SELECT option_value FROM {$wpdb->prefix}options WHERE option_name='jet_engine_meta_boxes'", ARRAY_A);
604 if(!empty($getMetaFields)){
605 $unserializedMeta = maybe_unserialize($getMetaFields[0]['option_value']);
606 }
607 else{
608 $unserializedMeta = '';
609 }
610
611 if(is_array($unserializedMeta)){
612 $arraykeys = array_keys($unserializedMeta);
613
614 foreach($arraykeys as $val){
615 $values = explode('-',$val);
616 $v = $values[1];
617 }
618 }
619
620
621 $jetMetaFieldName = [];
622 if(isset($v)){
623 for($i=1 ; $i<=$v ; $i++){
624 $unserializedMeta['meta-'.$i]= isset($unserializedMeta['meta-'.$i])? $unserializedMeta['meta-'.$i] : '';
625 $fields= $unserializedMeta['meta-'.$i];
626 if(!empty($fields)){
627 foreach($fields['meta_fields'] as $jet_key => $jetValue){
628 if($jetValue['type'] != 'repeater'){
629 $jetMetaFieldName[] = $jetValue['name'];
630 }
631 else{
632 $jetMetaFieldName[] = $jetValue['name'];
633 $jetRepFields = $jetValue['repeater-fields'];
634 foreach($jetRepFields as $jetRepKey => $jetRepVal){
635 $jetRepFieldName[] = $jetRepVal['name'];
636 }
637 }
638 }
639 }
640
641 }
642 }
643 if( isset($jetRepFieldName) && is_array($jetRepFieldName)){
644 if(is_array($jetMetaFieldName)){
645 $jetFName = array_merge($jetMetaFieldName,$jetRepFieldName);
646 }
647 else{
648 $jetFName= $jetRepFieldName;
649 }
650 }
651 else{
652 $jetFName= $jetMetaFieldName;
653 }
654
655 /*jet releation export support added */
656 $get_rel_fields = $wpdb->get_results("SELECT id,labels, args, meta_fields FROM {$wpdb->prefix}jet_post_types WHERE status = 'relation' ", ARRAY_A);
657 if(!empty($get_rel_fields)){
658 foreach($get_rel_fields as $get_rel_values){
659 $imported_type = !empty($optionalType) ? $optionalType : $module;
660
661 $jet_relation_names = maybe_unserialize($get_rel_values['labels']);
662 $jet_relation_name = maybe_unserialize($jet_relation_names['name']);
663 $jet_relation_id = $get_rel_values['id'];
664
665 $get_rel_fields_args = maybe_unserialize($get_rel_values['args']);
666 $get_rel_parent_value = $get_rel_fields_args['parent_object'];
667 $get_rel_child_value = $get_rel_fields_args['child_object'];
668 $get_rel_db_table = $get_rel_fields_args['db_table'];
669
670 $get_rel_parent1 = explode('::', $get_rel_parent_value);
671 $get_rel_parent = $get_rel_parent1[1];
672 $get_rel_parent_type = $get_rel_parent1[0];
673
674 $get_rel_child1 = explode('::', $get_rel_child_value);
675 $get_rel_child = $get_rel_child1[1];
676 $get_rel_child_type = $get_rel_child1[0];
677
678 if($imported_type == 'user'){
679 $imported_type = 'users';
680 }
681 if($imported_type == 'posts'){
682 $imported_type = 'post';
683 }
684
685 if($get_rel_db_table == 1){
686 $jet_rel_table_name = $wpdb->prefix . 'jet_rel_' . $jet_relation_id;
687 $jet_relmeta_table_name = $wpdb->prefix . 'jet_rel_' . $jet_relation_id . '_meta';
688 }
689 else{
690 $jet_rel_table_name = $wpdb->prefix . 'jet_rel_default';
691 $jet_relmeta_table_name = $wpdb->prefix . 'jet_rel_default_meta';
692 }
693 if($imported_type == $get_rel_parent || $imported_type == $get_rel_child){
694 $get_rel_metafields = maybe_unserialize($get_rel_values['meta_fields']);
695
696 if($imported_type == $get_rel_parent){
697 $get_jet_rel_object_connections =array();
698 $get_jet_rel_connections = $wpdb->get_results("SELECT child_object_id FROM $jet_rel_table_name WHERE parent_object_id = $id and rel_id = $jet_relation_id", ARRAY_A);
699 $get_jet_rel_object_connections = array_column($get_jet_rel_connections, 'child_object_id');
700
701 if(!empty($get_jet_rel_object_connections) && !empty($get_rel_metafields)){
702 $this->get_jetengine_relation_meta_fields($jet_relation_id, $id, $get_rel_metafields, $get_jet_rel_object_connections, 'parent', $jet_relmeta_table_name);
703 }
704 }
705 elseif($imported_type == $get_rel_child){
706 $get_jet_rel_object_connections =array();
707 $get_jet_rel_connections = $wpdb->get_results("SELECT parent_object_id FROM $jet_rel_table_name WHERE child_object_id = $id and rel_id = $jet_relation_id", ARRAY_A);
708 $get_jet_rel_object_connections = array_column($get_jet_rel_connections, 'parent_object_id');
709
710 if(!empty($get_jet_rel_object_connections) && !empty($get_rel_metafields)){
711 $this->get_jetengine_relation_meta_fields($jet_relation_id, $id, $get_rel_metafields, $get_jet_rel_object_connections, 'child', $jet_relmeta_table_name);
712 }
713 }
714 $get_rel_object_value = '';
715 if(!empty($get_jet_rel_object_connections)){
716 if($imported_type == $get_rel_parent){
717
718
719 if($get_rel_child == 'users'){
720 $users = $wpdb->prefix.'users';
721 $get_jet_rel_object_connections = implode(",", $get_jet_rel_object_connections);
722 $get_jet_rel_connections = $wpdb->get_col("SELECT user_login FROM $users WHERE ID IN ($get_jet_rel_object_connections)");
723 $get_rel_object_value = implode('|', $get_jet_rel_connections);
724 }
725 elseif($get_rel_parent_type== 'terms' && $get_rel_child_type == 'terms'){
726 $stored_objects = [];
727 foreach($get_jet_rel_object_connections as $my_jet_rel_objects){
728 $stored_objects[] = $wpdb->get_col("SELECT wp_terms.name FROM {$wpdb->prefix}terms AS wp_terms INNER JOIN {$wpdb->prefix}jet_rel_default AS wp_jet_rel_default ON wp_terms.term_id = wp_jet_rel_default.child_object_id WHERE wp_jet_rel_default.child_object_id = $my_jet_rel_objects");
729 }
730 $stored_objects_results = [];
731 foreach($stored_objects as $inner_array_values){
732 $stored_objects_results[] = implode('|' , $inner_array_values);
733 }
734 $get_rel_object_value = implode('|', $stored_objects_results);
735 }
736 else{
737 $posts = $wpdb->prefix . 'posts';
738 $get_jet_rel_object_connections = implode(",", $get_jet_rel_object_connections);
739 $get_jet_rel_connections = $wpdb->get_col("SELECT post_title FROM $posts WHERE ID IN ($get_jet_rel_object_connections)");
740 $get_rel_object_value = implode('|', $get_jet_rel_connections);
741 }
742 }
743 else if($imported_type == $get_rel_child){
744
745
746 if($get_rel_parent == 'users'){
747 $users = $wpdb->prefix.'users';
748 $get_jet_rel_object_connections = implode(",", $get_jet_rel_object_connections);
749 $get_jet_rel_connections = $wpdb->get_col("SELECT user_login FROM $users WHERE ID IN ($get_jet_rel_object_connections)");
750 $get_rel_object_value = implode('|', $get_jet_rel_connections);
751 }
752 elseif($get_rel_parent_type== 'terms' && $get_rel_child_type == 'terms'){
753 $stored_objects = [];
754 foreach($get_jet_rel_object_connections as $my_jet_rel_objects){
755 $stored_objects[] = $wpdb->get_col("SELECT wp_terms.name FROM {$wpdb->prefix}terms AS wp_terms INNER JOIN {$wpdb->prefix}jet_rel_default AS wp_jet_rel_default ON wp_terms.term_id = wp_jet_rel_default.parent_object_id WHERE wp_jet_rel_default.parent_object_id = $my_jet_rel_objects");
756 }
757 $stored_objects_results = [];
758 foreach($stored_objects as $inner_array_values){
759 $stored_objects_results[] = implode('|' , $inner_array_values);
760 }
761 $get_rel_object_value = implode('|', $stored_objects_results);
762 }
763 else{
764 $posts = $wpdb->prefix . 'posts';
765 $get_jet_rel_object_connections = implode(",", $get_jet_rel_object_connections);
766 $get_jet_rel_connections = $wpdb->get_col("SELECT post_title FROM $posts WHERE ID IN ($get_jet_rel_object_connections)");
767 $get_rel_object_value = implode('|', $get_jet_rel_connections);
768 }
769 }
770 }
771 self::$export_instance->data[$id][ 'jet_related_post :: ' . $jet_relation_id ] = $get_rel_object_value;
772 }
773 }
774 }
775
776 }
777 else{
778 $jetCPTFieldsName =$jetFName= $jet_tax_fields_name = '';
779 }
780
781 //added for metabox plugin fields
782 if(is_plugin_active('meta-box/meta-box.php')){
783 $metabox_import_type = self::import_post_types($module, $optionalType);
784 $metabox_fields = \rwmb_get_object_fields( $metabox_import_type );
785
786 $taxonomies = get_taxonomies();
787
788 if ($metabox_import_type == 'user')
789 {
790 $metabox_fields = \rwmb_get_object_fields($metabox_import_type, 'user');
791 }
792 else if (array_key_exists($metabox_import_type, $taxonomies))
793 {
794 $metabox_fields = \rwmb_get_object_fields($metabox_import_type, 'term');
795 }
796 else
797 {
798 $metabox_fields = \rwmb_get_object_fields($metabox_import_type);
799 }
800 $this->getCustomFieldValue($id, $value=null, $checkRep, $allacf, $typeOftypesField, $alltype, $jet_fields=null, $jet_types=null, $jet_rep_fields =null, $jet_rep_types=null, $parent, $typesf, $group_unset , $optionalType , self::$export_instance->allpodsfields, $metabox_fields, $module, $metabox_relation_fields =null);
801
802 }
803 else{
804 $metabox_fields = [];
805 }
806
807 if(!empty($result)) {
808
809 foreach($result as $key => $value) {
810
811 if($value->meta_key == 'rank_math_schema_BlogPosting'){
812 $rank_value=$value->meta_value;
813 $rank_math=unserialize($rank_value) ;
814 $headline=$rank_math['headline'];
815 $schema_description=$rank_math['description'];
816 $article_type=$rank_math['@type'];
817 $re_id = $wpdb->get_results("SELECT redirection_id FROM {$wpdb->prefix}rank_math_redirections_cache where object_id='$id'");
818 $redirect_id=$re_id[0];
819 $redirection_id=$redirect_id->redirection_id;
820 $result = $wpdb->get_results("SELECT url_to,header_code FROM {$wpdb->prefix}rank_math_redirections where id='$redirection_id'");
821 $rank_math_redirections=$result[0];
822 $url_to=$rank_math_redirections->url_to;
823 $header_code=$rank_math_redirections->header_code;
824
825 self::$export_instance->data[$id]['headline'] = $headline;
826 self::$export_instance->data[$id]['schema_description'] = $schema_description;
827 self::$export_instance->data[$id]['article_type'] = $article_type;
828 self::$export_instance->data[$id]['destination_url'] = $url_to;
829 self::$export_instance->data[$id]['redirection_type'] = $header_code;
830 }
831 if($value->meta_key == 'rank_math_schema_Dataset'){
832
833 $schema_data = get_post_meta($id, 'rank_math_schema_Dataset',true);
834 self::$export_instance->data[$id]['ds_name'] = $schema_data['name'];
835 self::$export_instance->data[$id]['ds_description'] = $schema_data['description'];
836 self::$export_instance->data[$id]['ds_url'] = $schema_data['url'];
837 self::$export_instance->data[$id]['ds_sameAs'] = $schema_data['sameAs'];
838 self::$export_instance->data[$id]['ds_license'] = $schema_data['license'];
839 self::$export_instance->data[$id]['ds_temp_coverage'] = $schema_data['temporalCoverage'];
840 self::$export_instance->data[$id]['ds_spatial_coverage'] = $schema_data['spatialCoverage'];
841 $distribution = $schema_data['distribution'];
842 $identifier = $schema_data['identifier'];
843 $keywords = $schema_data['keywords'];
844 if(is_array($distribution)){
845 $encodeFormat = '';
846 $contenUrl = '';
847 foreach ($distribution as $disKey => $disVal) {
848 $encodeFormat.= $disVal['encodingFormat'].',';
849 $contentUrl.= $disVal['contentUrl'].',';
850 self::$export_instance->data[$id]['encodingFormat'] = rtrim($encodeFormat,',');
851 self::$export_instance->data[$id]['contentUrl'] = rtrim($contentUrl,',');
852 }
853
854 }
855
856 if(is_array($identifier)){
857 $ident = '';
858 foreach ($identifier as $identKey => $identVal) {
859 $ident.= $identVal.',';
860
861 self::$export_instance->data[$id]['ds_identifier'] = rtrim($ident,',');
862
863 }
864 }
865
866 if(is_array($keywords)){
867 $keyword = '';
868 foreach ($keywords as $kwKey => $keyVal) {
869 $keyword.= $keyVal.',';
870 self::$export_instance->data[$id]['ds_keywords'] = rtrim($keyword,',');
871 }
872 }
873
874 }
875 if($value->meta_key == 'rank_math_advanced_robots'){
876 $rank_robots_value=$value->meta_value;
877 $rank_robots=unserialize($rank_robots_value);
878 $max_snippet=$rank_robots['max-snippet'];
879 $max_video_preview=$rank_robots['max-video-preview'];
880 $max_image_preview=$rank_robots['max-image-preview'];
881 $rank_math_advanced_robots=$max_snippet.','.$max_video_preview.','.$max_image_preview;
882 self::$export_instance->data[$id]['rank_math_advanced_robots'] = $rank_math_advanced_robots;
883 }
884 if(is_plugin_active('advanced-classifieds-and-directory-pro/acadp.php')) {
885 $listingFields = array('price','views','views','zipcode','phone','email','website','images','video','latitude','longitude','location');
886
887
888 if(isset($value->meta_key) && in_array($value->meta_key,$listingFields)){
889
890 if(is_serialized($value->meta_value)){
891 $value->meta_value = unserialize($value->meta_value);
892 }
893
894 self::$export_instance->data[$id][ $value->meta_key ] = $value->meta_value ;
895
896 }
897
898
899 }
900 if((isset($value->meta_key) && is_array($jetFName))){
901 if(in_array($value->meta_key,$jetFName)){
902 $getMetaFields = $wpdb->get_results( $wpdb->prepare("SELECT option_value FROM {$wpdb->prefix}options WHERE option_name=%s",'jet_engine_meta_boxes'),ARRAY_A);
903 $getMetaFields[0]['option_value'] = isset($getMetaFields[0]) ? $getMetaFields[0]['option_value'] : '';
904 $unserializedMeta = maybe_unserialize($getMetaFields[0]['option_value']);
905 if(is_array($unserializedMeta)){
906 $arraykeys = array_keys($unserializedMeta);
907
908 foreach($arraykeys as $val){
909 $values = explode('-',$val);
910 $v = $values[1];
911 }
912 }
913
914
915
916 for($i=1 ; $i<=$v ; $i++){
917 $unserializedMeta['meta-'.$i] = isset($unserializedMeta['meta-'.$i])? $unserializedMeta['meta-'.$i] :'';
918 $fields = $unserializedMeta['meta-'.$i];
919 if(!empty($fields)){
920 $jet_metatypes=array();
921 $jet_reptype=array();
922 foreach($fields['meta_fields'] as $jet_key => $jetValue){
923 $jetFieldLabel = $jetValue['title'];
924 $jetFNames = $jetValue['name'];
925 $jetFieldType = $jetValue['type'];
926 if($jetFieldType != 'repeater'){
927
928 $jet_metafields[$jetFNames]=$jetFNames;
929
930 $jet_metatypes[$jetFNames] = $jetFieldType;
931
932 }
933 else{
934 $jet_metafields[$jetFNames]=$jetFNames;
935 $jet_metatypes[$jetFNames] = $jetFieldType;
936 $repfields=$jetValue['repeater-fields'];
937 $jet_repfield=array();
938 foreach($repfields as $repFieldKey => $repFieldVal){
939 $jetRepFields_label = $repFieldVal['name'];
940 $jetRepFields_type = $repFieldVal['type'];
941
942 $jet_repfield[$jetRepFields_label] = $jetRepFields_label;
943 $jet_reptype[$jetRepFields_label] = $jetRepFields_type;
944 }
945 }
946 }
947 }
948
949 self::$export_instance->jet_metafields = $jet_metafields;
950 self::$export_instance->jet_metatypes = $jet_metatypes;
951 if(!empty($jet_repfield)){
952 self::$export_instance->jet_repfield = $jet_repfield;
953 self::$export_instance->jet_reptype = $jet_reptype;
954 }
955 else{
956 $jet_repfield = '';
957 $jet_reptype = '';
958 }
959 $this->getCustomFieldValue($id, $value, $checkRep, $allacf, $typeOftypesField, $alltype, $jet_metafields, $jet_metatypes, $jet_repfield, $jet_reptype,$parent, $typesf, $group_unset , $optionalType , self::$export_instance->allpodsfields, $metabox_fields, $module);
960 }
961 }
962 }
963 if(is_array($jetCPTFieldsName)&& isset($value->meta_key)){
964 if(in_array($value->meta_key,$jetCPTFieldsName)){
965 $jetEnginefields = $wpdb->get_results("SELECT id, meta_fields FROM {$wpdb->prefix}jet_post_types WHERE slug = '$optionalType' AND status IN ('publish','built-in')", ARRAY_A);
966
967 if(!empty($jetEnginefields)){
968 $unserializedMeta = maybe_unserialize($jetEnginefields[0]['meta_fields']);
969 }
970 else{
971 $unserializedMeta = '';
972 }
973 $jetTypes=array();
974 $jet_rep_cpttypes=array();
975 foreach($unserializedMeta as $jet_key => $jetValue){
976 $jetFieldLabel = $jetValue['title'];
977 $jet_cptfield_names = $jetValue['name'];
978 $jetFieldType = $jetValue['type'];
979 if($jetFieldType != 'repeater'){
980 $jet_cptfields[$jet_cptfield_names]=$jet_cptfield_names;
981 $jetTypes[$jet_cptfield_names] = $jetFieldType;
982 }
983 else{
984 $jet_cptfields[$jet_cptfield_names]=$jet_cptfield_names;
985 $jetTypes[$jet_cptfield_names] = $jetFieldType;
986 $fields=$jetValue['repeater-fields'];
987 foreach($fields as $repFieldKey => $repFieldVal){
988 $jet_rep_cptfields_label = $repFieldVal['name'];
989 $jet_rep_cptfields_type = $repFieldVal['type'];
990 $jet_rep_cptfields[$jet_rep_cptfields_label] = $jet_rep_cptfields_label;
991 $jet_rep_cpttypes[$jet_rep_cptfields_label] = $jet_rep_cptfields_type;
992 }
993 }
994
995 }
996 self::$export_instance->jet_cptfields = $jet_cptfields;
997 self::$export_instance->jet_types = $jetTypes;
998 if(isset($jet_rep_cptfields)){
999 self::$export_instance->jet_rep_cptfields = $jet_rep_cptfields;
1000 self::$export_instance->jet_rep_cpttypes = $jet_rep_cpttypes;
1001 }
1002 else{
1003 $jet_rep_cptfields = '';
1004 $jet_rep_cpttypes = '';
1005 }
1006 $this->getCustomFieldValue($id, $value, $checkRep, $allacf, $typeOftypesField, $alltype, $jet_cptfields, $jetTypes, $jet_rep_cptfields, $jet_rep_cpttypes, $parent, $typesf, $group_unset , $optionalType , self::$export_instance->allpodsfields, $metabox_fields, $module);
1007 }
1008 }
1009 else{
1010 $jet_fields = $jetFieldType = $jetRepFields = $jet_rep_types = '';
1011 $typesf=isset($typesf)?$typesf:'';
1012 $jetTypes=isset($jetTypes)?$jetTypes:'';
1013 $this->getCustomFieldValue($id, $value, $checkRep, $allacf, $typeOftypesField, $alltype, $jet_fields , $jetTypes, $jetRepFields, $jet_rep_types, $parent, $typesf, $group_unset , $optionalType , self::$export_instance->allpodsfields ,$metabox_fields, $module);
1014 }
1015 }
1016 }
1017
1018 if(is_plugin_active('wordpress-seo/wp-seo.php') || is_plugin_active('wordpress-seo-premium/wp-seo-premium.php')){
1019 self::$export_instance->data[$id]['title'] = self::$export_instance->data[$id]['post_title'];
1020 if($value->meta_key == '_yoast_wpseo_focuskw'){
1021 self::$export_instance->data[$id]['focus_keyword'] = $value->meta_value;
1022 }
1023 if($value->meta_key == '_yoast_wpseo_linkdex'){
1024 self::$export_instance->data[$id]['linkdex'] = $value->meta_value;
1025 }
1026 if($value->meta_key == '_yoast_wpseo_meta-robots-noindex'){
1027 self::$export_instance->data[$id]['meta-robots-noindex'] = $value->meta_value;
1028 }
1029 if($value->meta_key == '_yoast_wpseo_metadesc'){
1030 self::$export_instance->data[$id]['meta_desc'] = $value->meta_value;
1031 }
1032 if($value->meta_key == '_yoast_wpseo_opengraph-description'){
1033 self::$export_instance->data[$id]['opengraph-description'] = $value->meta_value;
1034 }
1035 if($value->meta_key == '_yoast_wpseo_opengraph-title'){
1036 self::$export_instance->data[$id]['opengraph-title'] = $value->meta_value;
1037 }
1038 if($value->meta_key == '_yoast_wpseo_twitter-title'){
1039 self::$export_instance->data[$id]['twitter-title'] = $value->meta_value;
1040 }
1041 if($value->meta_key == '_yoast_wpseo_google-plus-title'){
1042 self::$export_instance->data[$id]['google-plus-title'] = $value->meta_value;
1043 }
1044 if($value->meta_key == '_yoast_wpseo_google-plus-description'){
1045 self::$export_instance->data[$id]['google-plus-description'] = $value->meta_value;
1046 }
1047 if($value->meta_key == '_yoast_wpseo_google-plus-image'){
1048 self::$export_instance->data[$id]['google-plus-image'] = $value->meta_value;
1049 }
1050 if($value->meta_key == '_yoast_wpseo_twitter-description'){
1051 self::$export_instance->data[$id]['twitter-description'] = $value->meta_value;
1052 }
1053 if($value->meta_key == '_yoast_wpseo_twitter-image'){
1054 self::$export_instance->data[$id]['twitter-image'] = $value->meta_value;
1055 }
1056 if($value->meta_key == '_yoast_wpseo_bctitle'){
1057 self::$export_instance->data[$id]['bctitle'] = $value->meta_value;
1058 }
1059 if($value->meta_key == '_yoast_wpseo_canonical'){
1060 self::$export_instance->data[$id]['canonical'] = $value->meta_value;
1061 }
1062 if($value->meta_key == '_yoast_wpseo_redirect'){
1063 self::$export_instance->data[$id]['redirect'] = $value->meta_value;
1064 }
1065 if($value->meta_key == '_yoast_wpseo_opengraph-image'){
1066 self::$export_instance->data[$id]['opengraph-image'] = $value->meta_value;
1067 }
1068 if($value->meta_key == '_yoast_wpseo_meta-robots-nofollow'){
1069 self::$export_instance->data[$id]['meta-robots-nofollow'] = $value->meta_value;
1070 }
1071 if($value->meta_key == '_yoast_wpseo_meta-robots-adv'){
1072 self::$export_instance->data[$id]['meta-robots-adv'] = $value->meta_value;
1073 }
1074 if($value->meta_key == '_yoast_wpseo_cornerstone-content'){
1075 self::$export_instance->data[$id]['cornerstone-content'] = $value->meta_value;
1076 }
1077 if($value->meta_key == '_yoast_wpseo_focuskeywords'){
1078 self::$export_instance->data[$id]['focuskeywords'] = $value->meta_value;
1079 }
1080 if($value->meta_key == '_yoast_wpseo_keywordsynonyms'){
1081 self::$export_instance->data[$id]['keywordsynonyms'] = $value->meta_value;
1082 }
1083 if($value->meta_key == '_yoast_wpseo_schema_page_type'){
1084 self::$export_instance->data[$id]['schema_page_type'] = $value->meta_value;
1085 }
1086 if($value->meta_key == '_yoast_wpseo_schema_article_type'){
1087 self::$export_instance->data[$id]['schema_article_type'] = $value->meta_value;
1088 }
1089 }
1090
1091 return self::$export_instance->data;
1092 }
1093 public function get_jetengine_relation_meta_fields($jet_relation_id, $posted_id, $get_rel_metafields, $get_jet_rel_object_connections, $connection_type, $jet_relmeta_table_name){
1094 global $wpdb;
1095 foreach($get_rel_metafields as $get_rel_metavalue){
1096 $rel_meta_key = $get_rel_metavalue['name'];
1097
1098 $get_jet_rel_values = [];
1099 foreach($get_jet_rel_object_connections as $get_jet_rel_object_connection_values){
1100 if($connection_type == 'parent'){
1101 $get_jet_rel_value = $wpdb->get_var("SELECT meta_value FROM $jet_relmeta_table_name WHERE rel_id = $jet_relation_id AND meta_key = '$rel_meta_key' AND parent_object_id = $posted_id AND child_object_id = $get_jet_rel_object_connection_values ");
1102 if(is_serialized($get_jet_rel_value)){
1103 $unser_relvalue = unserialize($get_jet_rel_value);
1104 //Added for export only media id,while media have return format as both[if]
1105 if($rel_meta_key == 'media'){
1106 if(!empty($unser_relvalue) && array_key_exists('id',$unser_relvalue))
1107 $get_jet_rel_value = $unser_relvalue['id'];
1108 }
1109 else
1110 $get_jet_rel_value = implode(',', $unser_relvalue);
1111 }
1112 $get_jet_rel_values[] = $get_jet_rel_value;
1113 }
1114 else{
1115 $get_jet_rel_values[] = $wpdb->get_var("SELECT meta_value FROM $jet_relmeta_table_name WHERE rel_id = $jet_relation_id AND meta_key = '$rel_meta_key' AND parent_object_id = $get_jet_rel_object_connection_values AND child_object_id = $posted_id ");
1116 }
1117 }
1118 $get_rel_meta_value = '';
1119 if(!empty($get_jet_rel_values)){
1120 $get_rel_meta_value = implode('|', $get_jet_rel_values);
1121 }
1122 self::$export_instance->data[$posted_id][ $rel_meta_key . ' :: ' . $jet_relation_id ] = $get_rel_meta_value;
1123
1124 }
1125 }
1126
1127 public function getAllPodsFields(){
1128
1129 $pods_fields = [];
1130 if(in_array('pods/init.php', self::$export_instance->get_active_plugins())) {
1131 global $wpdb;
1132 $pods_fields_query_result = $wpdb->get_results("SELECT post_name FROM ".$wpdb->prefix."posts WHERE post_type = '_pods_field'");
1133 foreach($pods_fields_query_result as $single_result){
1134 $pods_fields[] = $single_result->post_name;
1135 }
1136 }
1137 return $pods_fields;
1138 }
1139
1140 public function getCustomFieldValue($id, $value, $checkRep, $allacf, $typeOftypesField, $alltype, $jet_fields, $jetTypes, $jetRepFields, $jet_rep_types, $parent, $typesf, $group_unset , $optionalType , $pods_type, $metabox_fields, $module){
1141 global $wpdb;
1142 $taxonomies = get_taxonomies();
1143 $down_file = false;
1144
1145 if ($value !== null && $value->meta_key == '_thumbnail_id') {
1146 $attachment_file = null;
1147 $thumbnail_id = $value->meta_value;
1148 $get_attachment = $wpdb->prepare("select guid from {$wpdb->prefix}posts where ID = %d AND post_type = %s", $value->meta_value, 'attachment');
1149 $attachment_file = $wpdb->get_var($get_attachment);
1150 self::$export_instance->data[$id][$value->meta_key] = '';
1151 $value->meta_key = 'featured_image';
1152 self::$export_instance->data[$id][$value->meta_key] = $attachment_file;
1153 if(isset($attachment_file)){
1154 $attachment = get_post($thumbnail_id);
1155 $image_meta = wp_get_attachment_metadata($thumbnail_id);
1156 $title = get_the_title($thumbnail_id);
1157 $alt_text = get_post_meta($thumbnail_id, '_wp_attachment_image_alt', true);
1158 $description = $attachment->post_content;
1159 $caption = $attachment->post_excerpt;
1160 $file_name = isset($image_meta['file']) ? basename($image_meta['file']) : '';
1161
1162 self::$export_instance->data[$id]['featured_image_title'] = isset($title)? $title : '' ;
1163 self::$export_instance->data[$id]['featured_image_alt_text'] = isset($alt_text)? $alt_text : '' ;
1164 self::$export_instance->data[$id]['featured_image_caption'] = isset($caption)? $caption : '' ;
1165 self::$export_instance->data[$id]['featured_image_description'] = isset($description)? $description : '' ;
1166 self::$export_instance->data[$id]['featured_file_name'] = isset($file_name)? $file_name : '' ;
1167 }
1168 }
1169 else if(is_plugin_active('jet-booking/jet-booking.php')){
1170
1171 if(isset($value->meta_key) && $value->meta_key == 'jet_abaf_price'){
1172 self::$export_instance->data[$id]['jet_abaf_price'] = $value->meta_value;
1173 }
1174 else if(isset($value->meta_key) && $value->meta_key == 'jet_abaf_configuration'){
1175 self::$export_instance->data[$id]['jet_abaf_configuration'] = $value->meta_value ;
1176 }
1177 else if(isset($value->meta_key) && $value->meta_key == 'jet_abaf_custom_schedule'){
1178 self::$export_instance->data[$id]['jet_abaf_custom_schedule'] =$value->meta_value;
1179 }
1180 }
1181 else if(isset($value->meta_key) && $value->meta_key == '_downloadable_files'){
1182
1183 $downfiles = unserialize($value->meta_value);
1184 if(!empty($downfiles)){
1185 foreach($downfiles as $dk => $dv){
1186 $down_file .= $dv['name'].','.$dv['file'].'|';
1187 }
1188 self::$export_instance->data[$id]['downloadable_files'] = rtrim($down_file,"|");
1189 }
1190 }
1191 elseif($value !== null && $value->meta_key == '_downloadable'){
1192 self::$export_instance->data[$id]['downloadable'] = $value->meta_value;
1193 }
1194 elseif($value !== null && $value->meta_key == '_upsell_ids'){
1195 $upselldata = unserialize($value->meta_value);
1196 if(!empty($upselldata)){
1197 foreach($upselldata as $upselldata_value){
1198 $upselldata_query = $wpdb->prepare("SELECT post_title FROM {$wpdb->prefix}posts where id = %d", $upselldata_value);
1199 $upselldata_value=$wpdb->get_results($upselldata_query);
1200 $upselldata_item[] = $upselldata_value[0]->post_title;
1201 }
1202 $upsellids = implode(',',$upselldata_item);
1203 self::$export_instance->data[$id]['upsell_ids'] = $upsellids;
1204 }
1205 }
1206 elseif($value !== null && $value->meta_key == '_crosssell_ids'){
1207 $cross_selldata = unserialize($value->meta_value);
1208 if(!empty($cross_selldata)){
1209 foreach($cross_selldata as $cross_selldata_value){
1210 $cross_selldata_query = $wpdb->prepare("SELECT post_title FROM {$wpdb->prefix}posts where id = %d", $cross_selldata_value);
1211 $cross_selldata_value=$wpdb->get_results($cross_selldata_query);
1212
1213 $cross_selldata_item[] = $cross_selldata_value[0]->post_title;
1214 }
1215 $cross_sellids = implode(',',$cross_selldata_item);
1216 self::$export_instance->data[$id]['crosssell_ids'] = $cross_sellids;
1217 }
1218 }
1219 elseif($value !== null && $value->meta_key == '_wc_pb_bundle_sell_ids'){
1220 $bundleselldata = unserialize($value->meta_value);
1221 if(!empty($bundleselldata) && is_array($bundleselldata)){
1222 $bundsell = [];
1223 foreach($bundleselldata as $bundle_id){
1224 $bundleids = $wpdb->get_results("SELECT post_title FROM {$wpdb->prefix}posts WHERE post_type = 'product' AND ID = '$bundle_id'");
1225 foreach($bundleids as $bundid){
1226 $bundsell[] = $bundid->post_title;
1227 }
1228 }
1229 $value->meta_value = implode(',',$bundsell);
1230 self::$export_instance->data[$id]['_wc_pb_bundle_sell_ids'] = $value->meta_value;
1231 }
1232 }
1233 elseif($value !== null && $value->meta_key == '_children'){
1234 $grpdata = unserialize($value->meta_value);
1235 if(!empty($grpdata)){
1236 $grpids = implode(',',$grpdata);
1237 self::$export_instance->data[$id]['grouping_product'] = $grpids;
1238 }
1239 }elseif($value !== null && $value->meta_key == '_product_image_gallery'){
1240 if(strpos($value->meta_value, ',') !== false) {
1241 // $file_data = explode(',',$value->meta_value);
1242 // foreach($file_data as $k => $v){
1243 // $attachment = wp_get_attachment_image_src($v);
1244 // $attach[$k] = $attachment[0];
1245 // }
1246 $file_data = explode(',', $value->meta_value);
1247 foreach ($file_data as $k => $v) {
1248 $attachment = wp_get_attachment_image_src($v);
1249 if ($attachment !== false && is_array($attachment) && isset($attachment[0])) {
1250 $attach[$k] = $attachment[0];
1251 } else {
1252 $attach[$k] = '';
1253 }
1254 }
1255 $gallery_data = '';
1256 foreach($attach as $values){
1257 $gallery_data .= $values.'|';
1258 }
1259 $gallery_data = rtrim($gallery_data , '|');
1260 self::$export_instance->data[$id]['product_image_gallery'] = $gallery_data;
1261 }else{
1262 $attachment = wp_get_attachment_image_src($value->meta_value);
1263 self::$export_instance->data[$id]['product_image_gallery'] = $attachment[0];
1264 }
1265 }elseif($value !== null && $value->meta_key == '_sale_price_dates_from'){
1266 $sales_price_date_from_value = '';
1267 if(!empty($value->meta_value)){
1268 $sales_price_date_from_value = date('Y-m-d',$value->meta_value);
1269 }
1270 self::$export_instance->data[$id]['sale_price_dates_from'] = $sales_price_date_from_value;
1271 }
1272 elseif($value !== null && $value->meta_key == '_lp_faqs'){
1273 $faqs=$value->meta_value;
1274 $unserialize_faq_value=unserialize($faqs);
1275 $faqs_value = '';
1276 foreach($unserialize_faq_value as $faq_key=>$faq_value){
1277 $faqs_value .= $faq_value[0].','.$faq_value[1].'|';
1278 }
1279 self::$export_instance->data[$id][ $value->meta_key ] = rtrim($faqs_value,'|');
1280 }
1281 elseif($value !== null && $value->meta_key == '_sale_price_dates_to'){
1282 $sales_price_dates_value = '';
1283 if(!empty($value->meta_value)){
1284 $sales_price_dates_value = date('Y-m-d',$value->meta_value);
1285 }
1286 self::$export_instance->data[$id]['sale_price_dates_to'] = $sales_price_dates_value;
1287 }else {
1288
1289 // commented this if statement
1290 // if(preg_match('/group_/',$value->meta_key)){
1291 // $value->meta_key = preg_replace('/group_/','', $value->meta_key );
1292 // }
1293
1294
1295 if($value !== null && isset($allacf) && array_search($value->meta_key, $allacf)){
1296 $repeaterOfrepeater = false;
1297 $getType = $alltype[$value->meta_key];
1298 if(empty($getType)){
1299 $tempFieldname = array_search($value->meta_key, $allacf);
1300 $getType = $alltype[$tempFieldname];
1301 }
1302
1303 if ($getType == 'flexible_content' || $getType == 'repeater') {
1304 if(is_serialized($value->meta_value)){
1305 $value->meta_value = unserialize($value->meta_value);
1306 $count = count($value->meta_value);
1307 }else{
1308 $count = $value->meta_value;
1309 }
1310
1311 $getRF = $checkRep[$value->meta_key];
1312 $repeater_data = [];
1313
1314 if($getType == 'flexible_content'){
1315 $flexible_value = '';
1316 foreach($value->meta_value as $values){
1317 $flexible_value .= $values.'|';
1318 }
1319 $flexible_value = rtrim($flexible_value , '|');
1320 self::$export_instance->data[$id][$value->meta_key] = self::$export_instance->returnMetaValueAsCustomerInput($flexible_value);
1321 }
1322
1323 foreach ($getRF as $rep => $rep1) {
1324 $repType = $alltype[$rep1];
1325
1326 $reval = "";
1327 for($z=0;$z<$count;$z++){
1328 $var = $value->meta_key.'_'.$z.'_'.$rep1;
1329
1330 if(in_array($optionalType , $taxonomies)){
1331 $qry = $wpdb->get_results($wpdb->prepare("SELECT meta_value FROM {$wpdb->prefix}terms wp JOIN {$wpdb->prefix}termmeta wpm ON wpm.term_id = wp.term_id where meta_key = %s AND wp.term_id = %d", $var, $id));
1332 }else{
1333 $qry = $wpdb->get_results($wpdb->prepare("SELECT meta_value FROM {$wpdb->prefix}posts wp JOIN {$wpdb->prefix}postmeta wpm ON wpm.post_id = wp.ID where meta_key = %s AND ID=%d", $var, $id));
1334 }
1335
1336 $meta = $qry[0]->meta_value;
1337 if($repType == 'image')
1338 $meta = $this->getAttachment($meta);
1339 if($repType == 'file')
1340 $meta =$this->getAttachment($meta);
1341 if($repType == 'repeater' || $repType == 'flexible_content')
1342 $meta = $this->getRepeaterofRepeater($value->meta_key);
1343 if(is_serialized($meta))
1344 {
1345 $unmeta = unserialize($meta);
1346 $meta = "";
1347 foreach ($unmeta as $unmeta1) {
1348 if($repType == 'image' || $repType == 'gallery')
1349 $meta .= $this->getAttachment($unmeta1).",";
1350 elseif($repType == 'taxonomy') {
1351 $meta .=$unmeta1.',';
1352 }
1353 elseif($repType == 'user') {
1354 $meta .=$unmeta1.',';
1355 }
1356 elseif($repType == 'post_object') {
1357 $meta .=$unmeta1.',';
1358 }
1359 elseif($repType == 'relationship') {
1360 $meta .=$unmeta1.',';
1361 }
1362 elseif($repType == 'page_link') {
1363 $meta .=$unmeta1.',';
1364 }
1365 elseif($repType == 'link') {
1366 $meta .=$unmeta1;
1367 }
1368
1369
1370 else
1371 $meta .= $unmeta1.",";
1372 }
1373 $meta = rtrim($meta,',');
1374 }
1375 if($meta != "")
1376 $reval .= $meta."|";
1377 }
1378 self::$export_instance->data[$id][$rep1] = self::$export_instance->returnMetaValueAsCustomerInput(rtrim($reval,'|'));
1379 }
1380 }
1381 elseif( is_serialized($value->meta_value)){
1382
1383 $acfva = unserialize($value->meta_value);
1384 $acfdata = "";
1385 foreach ($acfva as $key1 => $value1) {
1386 if($getType == 'checkbox')
1387 $acfdata .= $value1.',';
1388 elseif($getType == 'gallery' || $getType == 'image'){
1389 $attach = $this->getAttachment($value1);
1390 $acfdata .= $attach.',';
1391 }
1392 elseif($getType == 'google_map')
1393 {
1394 $acfdata=$acfva['address'];
1395 }
1396 else{
1397 if(!empty($value1)) {
1398 $acfdata .= $value1.',';
1399 }
1400 }
1401
1402 }
1403 self::$export_instance->data[$id][ $value->meta_key ] = self::$export_instance->returnMetaValueAsCustomerInput(rtrim($acfdata,','));
1404 }
1405 elseif($getType == 'gallery' || $getType == 'image'|| $getType == 'file' ){
1406 $attach1 = $this->getAttachment($value->meta_value);
1407 self::$export_instance->data[$id][ $value->meta_key ] = $attach1;
1408 }
1409 else{
1410 self::$export_instance->data[$id][ $value->meta_key ] = self::$export_instance->returnMetaValueAsCustomerInput($value->meta_value);
1411 }
1412 }
1413 elseif(is_array($jet_fields) && in_array($value->meta_key, $jet_fields) && !empty($value->meta_value)){
1414 $getjetType = isset($jetTypes[$value->meta_key]) ? $jetTypes[$value->meta_key] : '';
1415 if(empty($getjetType)){
1416 $tempFieldname = array_search($value->meta_key, $jet_fields);
1417 $getjetType = isset($jetTypes[$tempFieldname]) ? $jetTypes[$tempFieldname] : '';
1418 }
1419
1420 if($getjetType == 'checkbox' && is_string($value->meta_value)){
1421 $value->meta_value = unserialize($value->meta_value);
1422 $check = '';
1423 foreach($value->meta_value as $key => $metvalue){
1424 if(is_numeric($key)){
1425 $check .= $metvalue.',';
1426 $rcheck = substr($check,0,-1);
1427 self::$export_instance->data[$id][ $value->meta_key ] = $rcheck;
1428 }
1429 else{
1430 if($metvalue == 'true'){
1431
1432 $exp_value[] = $key;
1433 }
1434 if(isset($exp_value) && is_array($exp_value)){
1435 $value->meta_value = implode(',',$exp_value );
1436 }
1437
1438 self::$export_instance->data[$id][ $value->meta_key ] = $value->meta_value;
1439 }
1440
1441 }
1442
1443 }
1444 elseif($getjetType == 'select'){
1445 if(is_serialized($value->meta_value)){
1446 $value->meta_value = unserialize($value->meta_value);
1447 foreach($value->meta_value as $metkey => $metselectvalue){
1448 $select[] = $metselectvalue;
1449 $value->meta_value = implode(',',$select );
1450 self::$export_instance->data[$id][ $value->meta_key ] = $value->meta_value;
1451 }
1452 }
1453 else{
1454 self::$export_instance->data[$id][ $value->meta_key ] = $value->meta_value;
1455 }
1456 }
1457 elseif($getjetType == 'date'){
1458 if(!empty($value->meta_value)){
1459 if(strpos($value->meta_value, '-') !== FALSE){
1460 }else{
1461 $value->meta_value = date('Y-m-d', $value->meta_value);
1462 }
1463 }
1464 self::$export_instance->data[$id][ $value->meta_key ] = $value->meta_value;
1465 }
1466 elseif($getjetType == 'datetime-local'){
1467 if(!empty($value->meta_value)){
1468 if(strpos($value->meta_value, '-') !== FALSE){
1469 }else{
1470 $value->meta_value = date('Y-m-d H:i', $value->meta_value);
1471 }
1472 $value->meta_value = str_replace(' ', 'T', $value->meta_value);
1473 }
1474 self::$export_instance->data[$id][ $value->meta_key ] = $value->meta_value;
1475 }
1476 else{
1477 self::$export_instance->data[$id][ $value->meta_key ] = $value->meta_value;
1478 }
1479 }
1480 elseif (!empty($typesf) && isset($value->meta_key) && in_array($value->meta_key, $typesf)) {
1481 global $wpdb;
1482 $type_value = '';
1483 $typeoftype = $typeOftypesField[$value->meta_key];
1484 if(in_array($optionalType , $taxonomies)){
1485 $type_data = get_term_meta($id,$value->meta_key);
1486 }
1487 elseif($optionalType == 'users'){
1488 $type_data = get_user_meta($id,$value->meta_key);
1489 }
1490 else{
1491 $type_data = get_post_meta($id,$value->meta_key);
1492 $typcap = "";
1493 foreach($type_data as $type_key =>$type_value){
1494 if(!is_array($type_value)){
1495 $substring='http';
1496 $string=substr($type_value,0,4);
1497 if($string==$substring){
1498 $getid=$wpdb->get_results("select ID from {$wpdb->prefix}posts where guid= '$type_value'" ,ARRAY_A);
1499 foreach($getid as $getkey => $getval){
1500 global $wpdb;
1501 $ids=$getval['ID'];
1502 $types_caption=$wpdb->get_results("select post_excerpt from {$wpdb->prefix}posts where ID= '$ids'" ,ARRAY_A);
1503 $types_description=$wpdb->get_results("select post_content from {$wpdb->prefix}posts where ID= '$ids'" ,ARRAY_A);
1504 $types_title=$wpdb->get_results("select post_title from {$wpdb->prefix}posts where ID= '$ids'" ,ARRAY_A);
1505 $types_alt_text=$wpdb->get_results("select meta_value from {$wpdb->prefix}postmeta where meta_key= '_wp_attachment_image_alt' AND post_id='$ids'" ,ARRAY_A);
1506 $types_filename=$wpdb->get_results("select meta_value from {$wpdb->prefix}postmeta where meta_key= '_wp_attached_file' AND post_id='$ids'" ,ARRAY_A);
1507 if(isset($types_filename[0])){
1508 $filename=$types_filename[0]['meta_value'];
1509 }
1510 if(isset($filename)){
1511 $file_names=explode('/', $filename);
1512 }
1513 if(isset($file_names[2])){
1514 $file_name= $file_names[2];
1515 }
1516 $file_name=isset($file_name)?$file_name:'';
1517 self::$export_instance->data[$id]['types_caption'] = $types_caption[0]['post_excerpt'];
1518 self::$export_instance->data[$id]['types_description'] = $types_description;
1519 self::$export_instance->data[$id]['types_title'] = $types_title;
1520 self::$export_instance->data[$id]['types_alt_text'] = $types_alt_text;
1521 self::$export_instance->data[$id]['types_file_name'] = $file_name;
1522
1523
1524 }
1525 }
1526
1527 $type_value = rtrim($type_value , '|');
1528
1529 }
1530
1531 }
1532
1533 self::$export_instance->data[$id][ $value->meta_key ] = $type_value;
1534
1535 }
1536
1537 if(is_array($type_data)){
1538 $type_value="";
1539 foreach($type_data as $k => $mid){
1540 if(is_array($mid) && !empty($mid)){
1541 if($typeoftype == 'skype'){
1542 $type_value .= $mid['skypename'] . '|';
1543 }
1544 elseif($typeoftype == 'checkboxes'){
1545 $check_type_value = '';
1546 foreach($mid as $mid_value){
1547 $check_type_value .= $mid_value[0] . ',';
1548 }
1549 $type_value .= rtrim($check_type_value , ',');
1550 }
1551 }
1552 elseif($typeoftype == 'date'){
1553 $wptypesfields = get_option('wpcf-fields');
1554 $fd_name = preg_replace('/wpcf-/','', $value->meta_key );
1555 if (isset($wptypesfields[$fd_name]['data']['date_and_time'])) {
1556 $format = $wptypesfields[$fd_name]['data']['date_and_time'];
1557 $dateformat =$format == 'date'?"Y-m-d" : "Y-m-d H:i:s";
1558 if(!empty($mid))
1559 $type_value .= date($dateformat, $mid) . '|';
1560 }
1561 }
1562 else{
1563 if(!is_array($mid)){
1564 $type_value .= $mid . '|';
1565 }
1566 }
1567 }
1568 if(preg_match('/wpcf-/',$value->meta_key)){
1569 $value->meta_key = preg_replace('/wpcf-/','', $value->meta_key );
1570 self::$export_instance->data[$id][ $value->meta_key ] = rtrim($type_value , '|');
1571 }
1572 }
1573
1574 // if(preg_match('/group_/',$value->meta_key)){
1575 // $getType = $alltype[$value->meta_key];
1576 // if($value->meta_key == 'group_gallery' || $value->meta_key == 'group_image'|| $value->meta_key == 'file' ){
1577 // $groupattach = $this->getAttachment($value->meta_value);
1578 // self::$export_instance->data[$id][ $value->meta_key ] = $groupattach;
1579 // }
1580 // else{
1581 // $value->meta_key = preg_replace('/group_/','', $value->meta_key );
1582 // self::$export_instance->data[$id][ $value->meta_key ] = $value->meta_value;
1583 // }
1584 // }
1585
1586 //TYPES Allow multiple-instances of this field
1587 }elseif(!empty($group_unset) && is_array($value) && isset($value['meta_key']) && in_array($value['meta_key'], $group_unset) && is_serialized($value['meta_value'])) {
1588
1589 $unser = unserialize($value->meta_value);
1590 $data = "";
1591 foreach ($unser as $key4 => $value4)
1592 $data .= $value4.',';
1593 self::$export_instance->data[$id][ $value->meta_key ] = substr($data, 0, -1);
1594 }
1595 elseif(!empty($pods_type) && in_array($value->meta_key , $pods_type)){
1596 if(!isset(self::$export_instance->data[$id][$value->meta_key])){
1597 if(in_array($optionalType , $taxonomies)){
1598 $pods_file_data = get_term_meta($id,$value->meta_key);
1599 }else{
1600 $pods_file_data = get_post_meta($id,$value->meta_key);
1601 }
1602
1603 $pods_value = '';
1604 foreach($pods_file_data as $pods_file_value){
1605 if(!empty($pods_file_value)){
1606 if(is_array($pods_file_value)){
1607 $pods_file_value['post_type']=isset($pods_file_value['post_type'])?$pods_file_value['post_type']:'';
1608 $posts_type=$pods_file_value['post_type'];
1609 if($posts_type=='attachment'){
1610 $pods_value .= $pods_file_value['guid'] . ',';
1611 }
1612 elseif($posts_type!=='attachment'){
1613 $pods_file_value['guid']=isset($pods_file_value['guid'])?$pods_file_value['guid']:'';
1614 $p_guid=$pods_file_value['guid'];
1615 $pod_tit = $wpdb->get_results("SELECT post_title FROM {$wpdb->prefix}posts where guid='$p_guid'");
1616 if(!empty($pod_tit)){
1617 foreach($pod_tit as $pods_title){
1618 $pods_title_value=$pods_title->post_title;
1619 $pods_value .= $pods_title_value . ',';
1620 }
1621 }
1622 else{
1623 $podstaxval = $pods_file_value['name'];
1624 $pods_value .= $podstaxval. ',';
1625 }
1626 }
1627 }else{
1628 $pods_value .= $pods_file_value . ',';
1629 }
1630 }
1631 }
1632 self::$export_instance->data[$id][$value->meta_key] = rtrim($pods_value , ',');
1633 }
1634 }
1635
1636 elseif(!empty($metabox_fields) && is_array($metabox_fields) || (is_array($metabox_fields) && array_key_exists($value->meta_key, $metabox_fields))){
1637 foreach($metabox_fields as $meta_val){
1638 if($meta_val['type'] == 'taxonomy'){
1639 $meta_tax = $meta_val['taxonomy'];
1640
1641 $meta_key = $meta_val['id'];
1642 foreach($meta_tax as $meta_val){
1643 $get_metabox_titles[] = $wpdb->get_results("SELECT t.name FROM {$wpdb->prefix}terms t Inner join {$wpdb->prefix}term_taxonomy tax ON t.term_id=tax.term_id INNER JOIN {$wpdb->prefix}term_relationships tr ON tr.term_taxonomy_id=tax.term_taxonomy_id WHERE tr.object_id =$id AND tax.taxonomy ='$meta_val'",ARRAY_A);
1644 }
1645
1646
1647 $titles =array();
1648 if(is_array($get_metabox_titles)){
1649 foreach($get_metabox_titles as $title => $value){
1650 foreach($value as $valu => $val){
1651 $titles[] = $val['name'];
1652 }
1653 }
1654 $tax_val =implode('|',$titles);
1655
1656 self::$export_instance->data[$id][$meta_key] = $tax_val;
1657 }
1658 }
1659 }
1660
1661 $get_metabox_fieldtype = $metabox_fields[$value->meta_key]['type'];
1662
1663 if($get_metabox_fieldtype == 'select' || $get_metabox_fieldtype == 'select_advanced' || $get_metabox_fieldtype == 'checkbox_list' || $get_metabox_fieldtype == 'text_list' || $get_metabox_fieldtype == 'file_advanced'){
1664
1665 $metabox_metakey = $value->meta_key;
1666 if($module == 'Users'){
1667 $get_metabox_values = $wpdb->get_results("SELECT meta_value FROM {$wpdb->prefix}usermeta WHERE meta_key = '$metabox_metakey' AND user_id = $id ", ARRAY_A);
1668 }else if($module == 'Categories' || $module == 'Taxonomies' || $module == 'Tags'){
1669 $get_metabox_values = $wpdb->get_results("SELECT meta_value FROM {$wpdb->prefix}termmeta WHERE meta_key = '$metabox_metakey' AND term_id = $id ", ARRAY_A);
1670 }else{
1671 $get_metabox_values = $wpdb->get_results("SELECT meta_value FROM {$wpdb->prefix}postmeta WHERE meta_key = '$metabox_metakey' AND post_id = $id ", ARRAY_A);
1672 }
1673
1674 $metabox_values = array_column($get_metabox_values, 'meta_value');
1675 if($get_metabox_fieldtype == 'file_advanced' || $get_metabox_fieldtype == 'image_advanced'){
1676 $get_metabox_file_url = [];
1677 foreach($metabox_values as $metavalue){
1678 $get_metabox_file_url[] = $wpdb->get_var("SELECT guid FROM {$wpdb->prefix}posts WHERE ID = $metavalue AND post_type = 'attachment' ");
1679 }
1680
1681 $metabox_file_value = implode(',', $get_metabox_file_url);
1682 self::$export_instance->data[$id][ $value->meta_key ] = $metabox_file_value;
1683 }
1684 else{
1685 $metabox_value = implode(',', $metabox_values);
1686 self::$export_instance->data[$id][ $value->meta_key ] = $metabox_value;
1687 }
1688 }
1689
1690 elseif($get_metabox_fieldtype == 'fieldset_text'){
1691 $fieldset_values = unserialize($value->meta_value);
1692 $fieldset_value = implode(',', array_values($fieldset_values));
1693 self::$export_instance->data[$id][ $value->meta_key ] = $fieldset_value;
1694 }
1695
1696 elseif($get_metabox_fieldtype == 'post' || $get_metabox_fieldtype == 'taxonomy' || $get_metabox_fieldtype == 'user'){
1697 if($get_metabox_fieldtype == 'post'){
1698 $get_metabox_titles = $wpdb->get_var("SELECT post_title FROM {$wpdb->prefix}posts WHERE ID = $value->meta_value ");
1699 }
1700 elseif($get_metabox_fieldtype == 'taxonomy' || $get_metabox_fieldtype == 'taxonomy_advanced'){
1701 $get_metabox_titles = $wpdb->get_var("SELECT name FROM {$wpdb->prefix}terms WHERE term_id = $value->meta_value ");
1702 }
1703 elseif($get_metabox_fieldtype == 'user'){
1704 $get_metabox_titles = $wpdb->get_var("SELECT user_login FROM {$wpdb->prefix}users WHERE ID = $value->meta_value ");
1705 }
1706 self::$export_instance->data[$id][ $value->meta_key ] = $get_metabox_titles;
1707 }
1708
1709 elseif($get_metabox_fieldtype == 'image' || $get_metabox_fieldtype == 'file'){
1710 $upload_values = $value->meta_value;
1711 $upload_value = $wpdb->get_var("SELECT guid FROM {$wpdb->prefix}posts WHERE ID = $upload_values AND post_type = 'attachment' ");
1712 self::$export_instance->data[$id][ $value->meta_key ] = $upload_value;
1713 }
1714 else{
1715 self::$export_instance->data[$id][ $value->meta_key ] = $value->meta_value;
1716 }
1717 }
1718
1719 else{
1720 self::$export_instance->data[$id][ $value->meta_key ] = $value->meta_value;
1721 }
1722
1723
1724 }
1725 }
1726
1727 public function getRepeater($parent)
1728 {
1729 global $wpdb;
1730
1731 $get_fields = $wpdb->get_results($wpdb->prepare("SELECT * FROM $wpdb->posts where post_parent = %d", $parent), ARRAY_A);
1732 $i = 0;
1733 foreach ($get_fields as $key => $value) {
1734 $array[$i] = $value['post_excerpt'];
1735 $i++;
1736 }
1737
1738 return $array;
1739 }
1740
1741 public function getRepeaterofRepeater($parent)
1742 {
1743 global $wpdb;
1744 $get_fields = $wpdb->get_results($wpdb->prepare("SELECT * FROM $wpdb->posts where post_parent = %d", $parent), ARRAY_A);
1745 $test = $get_fields[0]->ID ;
1746 $get_fieldss = $wpdb->get_results($wpdb->prepare("SELECT * FROM $wpdb->posts where post_parent = %d", $test), ARRAY_A);
1747 $i = 0;
1748 foreach ($get_fieldss as $key => $value) {
1749 $array[$i] = $value['post_excerpt'];
1750 $i++;
1751 }
1752
1753 return $array;
1754 }
1755
1756
1757
1758 /**
1759 * Fetch all Categories
1760 * @param $mode
1761 * @param $module
1762 * @param $optionalType
1763 * @return array
1764 */
1765 public function FetchCategories($module,$optionalType,$mode = null) {
1766 $headers = self::$export_instance->generateHeaders($module, $optionalType);
1767 global $wpdb;
1768 // $get_all_terms = get_categories('hide_empty=0');
1769 // self::$export_instance->totalRowCount = count($get_all_terms);
1770 $query = "SELECT * FROM {$wpdb->prefix}terms t INNER JOIN {$wpdb->prefix}term_taxonomy tax
1771 ON `tax`.term_id = `t`.term_id WHERE `tax`.taxonomy = 'category'";
1772 $get_all_taxonomies = $wpdb->get_results($query);
1773 self::$export_instance->totalRowCount = count($get_all_taxonomies);
1774 $offset = self::$export_instance->offset;
1775 $limit = self::$export_instance->limit;
1776
1777
1778 $query="SELECT term_id FROM {$wpdb->prefix}term_taxonomy where taxonomy='category'";
1779
1780 $offset_limit = " order by term_id asc limit $offset, $limit";
1781 $query_with_offset_limit = $query.$offset_limit;
1782
1783 $result= $wpdb->get_col($query_with_offset_limit);
1784 $query1=array();
1785 foreach($result as $res=>$re){
1786 $query1[]=$wpdb->get_results(" SELECT t.name, t.slug, tx.description, tx.parent, t.term_id FROM {$wpdb->prefix}terms as t join {$wpdb->prefix}term_taxonomy as tx on t.term_id = tx.term_id where t.term_id = '$re'");
1787 }
1788 $new=array();
1789 foreach($query1 as $qkey => $qval){
1790 foreach($qval as $qid){
1791 $new[]=$qid;
1792 }
1793
1794 }
1795 if(!empty($new)) {
1796 foreach( $new as $termKey => $termValue ) {
1797 $termID = $termValue->term_id;
1798 $termName = $termValue->name;
1799 $termSlug = $termValue->slug;
1800 $termDesc = $termValue->description;
1801 $termParent = $termValue->parent;
1802 if($termParent == 0) {
1803 self::$export_instance->data[$termID]['name'] = $termName;
1804 } else {
1805 $termParentName = get_cat_name( $termParent );
1806 self::$export_instance->data[$termID]['name'] = $termParentName . '|' . $termName;
1807 }
1808 self::$export_instance->data[$termID]['slug'] = $termSlug;
1809 self::$export_instance->data[$termID]['description'] = $termDesc;
1810 self::$export_instance->data[$termID]['parent'] = $termParent;
1811 self::$export_instance->data[$termID]['TERMID'] = $termID;
1812
1813 self::$export_instance->getWPMLData($termID,$optionalType,$module);
1814 if(is_plugin_active('polylang/polylang.php') || is_plugin_active('polylang-pro/polylang.php') || is_plugin_active('polylang-wc/polylang-wc.php')){
1815 self::$export_instance->getPolylangData($termID,$optionalType,$module);
1816 }
1817 $this->getPostsMetaDataBasedOnRecordId ($termID, $module, $optionalType);
1818
1819 if(in_array('wordpress-seo/wp-seo.php', self::$export_instance->get_active_plugins())) {
1820 $seo_yoast_taxonomies = get_option( 'wpseo_taxonomy_meta' );
1821 if ( isset( $seo_yoast_taxonomies['category'] ) ) {
1822
1823 self::$export_instance->data[ $termID ]['title'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_title'];
1824 self::$export_instance->data[ $termID ]['meta_desc'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_desc'];
1825 self::$export_instance->data[ $termID ]['canonical'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_canonical'];
1826 self::$export_instance->data[ $termID ]['bctitle'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_bctitle'];
1827 self::$export_instance->data[ $termID ]['meta-robots-noindex'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_noindex'];
1828 self::$export_instance->data[ $termID ]['sitemap-include'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_sitemap_include'];
1829 self::$export_instance->data[ $termID ]['opengraph-title'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_opengraph-title'];
1830 self::$export_instance->data[ $termID ]['opengraph-description'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_opengraph-description'];
1831 self::$export_instance->data[ $termID ]['opengraph-image'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_opengraph-image'];
1832 self::$export_instance->data[ $termID ]['twitter-title'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_twitter-title'];
1833 self::$export_instance->data[ $termID ]['twitter-description'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_twitter-description'];
1834 self::$export_instance->data[ $termID ]['twitter-image'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_twitter-image'];
1835 self::$export_instance->data[ $termID ]['focus_keyword'] = $seo_yoast_taxonomies['category'][$termID]['wpseo_focuskw'];
1836
1837 }
1838 }
1839 }
1840 }
1841 $result = self::$export_instance->finalDataToExport(self::$export_instance->data, $module);
1842
1843 if($mode == null){
1844 self::$export_instance->proceedExport($result);
1845 }else{
1846 return $result;
1847 }
1848 }
1849
1850
1851 public function get_common_post_metadata($meta_id){
1852 global $wpdb;
1853 $mdata = $wpdb->get_results( $wpdb->prepare("SELECT * FROM $wpdb->postmeta WHERE meta_id = %d", $meta_id) ,ARRAY_A);
1854 return $mdata[0];
1855 }
1856
1857 public function getAttachment($id)
1858 {
1859 global $wpdb;
1860 $get_attachment = $wpdb->prepare("select guid from $wpdb->posts where ID = %d AND post_type = %s", $id, 'attachment');
1861 $attachment = $wpdb->get_results($get_attachment);
1862 if (!empty($attachment) && is_array($attachment)) {
1863 if (isset($attachment[0]->guid)) {
1864 $attachment_file = $attachment[0]->guid;
1865 return $attachment_file;
1866 }
1867 }
1868 return null;
1869 }
1870
1871 /**
1872 * Fetch all Tags
1873 * @param $mode
1874 * @param $module
1875 * @param $optionalType
1876 * @return array
1877 */
1878 public function FetchTags($module,$optionalType,$mode = null) {
1879 global $wpdb;
1880 self::$export_instance->generateHeaders($module, $optionalType);
1881 // $get_all_terms = get_tags('hide_empty=0');
1882
1883 // self::$export_instance->totalRowCount = count($get_all_terms);
1884 $query = "SELECT * FROM {$wpdb->prefix}terms t INNER JOIN {$wpdb->prefix}term_taxonomy tax
1885 ON `tax`.term_id = `t`.term_id WHERE `tax`.taxonomy = 'post_tag'";
1886 $get_all_taxonomies = $wpdb->get_results($query);
1887 self::$export_instance->totalRowCount = count($get_all_taxonomies);
1888 $offset = self::$export_instance->offset;
1889 $limit = self::$export_instance->limit;
1890
1891 $query="SELECT term_id FROM {$wpdb->prefix}term_taxonomy where taxonomy='post_tag'";
1892
1893 $offset_limit = " order by term_id asc limit $offset, $limit";
1894 $query_with_offset_limit = $query.$offset_limit;
1895
1896 $result= $wpdb->get_col($query_with_offset_limit);
1897 $query1=array();
1898 foreach($result as $res=>$id){
1899 $query1[]=$wpdb->get_results(" SELECT t.name, t.slug, tx.description, tx.parent, t.term_id FROM {$wpdb->prefix}terms as t join {$wpdb->prefix}term_taxonomy as tx on t.term_id = tx.term_id where t.term_id = '$id'");
1900 }
1901 $new=array();
1902 foreach($query1 as $qkey => $qval){
1903 foreach($qval as $qid){
1904 $new[]=$qid;
1905 }
1906
1907 }
1908 if(!empty($new)) {
1909 foreach( $new as $termKey => $termValue ) {
1910 $termID = $termValue->term_id;
1911 $termName = $termValue->name;
1912 $termSlug = $termValue->slug;
1913 $termDesc = $termValue->description;
1914 self::$export_instance->data[$termID]['name'] = $termName;
1915 self::$export_instance->data[$termID]['slug'] = $termSlug;
1916 self::$export_instance->data[$termID]['description'] = $termDesc;
1917
1918 $this->getPostsMetaDataBasedOnRecordId ($termID, $module, $optionalType);
1919 self::$export_instance->getWPMLData($termID,$optionalType,$module);
1920 if(is_plugin_active('polylang/polylang.php') || is_plugin_active('polylang-pro/polylang.php') || is_plugin_active('polylang-wc/polylang-wc.php')){
1921 self::$export_instance->getPolylangData($termID,$optionalType,$module);
1922 }
1923 if(in_array('wordpress-seo/wp-seo.php', self::$export_instance->get_active_plugins())) {
1924 $seo_yoast_taxonomies = get_option( 'wpseo_taxonomy_meta' );
1925 if ( isset( $seo_yoast_taxonomies['post_tag'] ) ) {
1926
1927 self::$export_instance->data[ $termID ]['title'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_title'];
1928 self::$export_instance->data[ $termID ]['meta_desc'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_desc'];
1929 self::$export_instance->data[ $termID ]['canonical'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_canonical'];
1930 self::$export_instance->data[ $termID ]['bctitle'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_bctitle'];
1931 self::$export_instance->data[ $termID ]['meta-robots-noindex'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_noindex'];
1932 self::$export_instance->data[ $termID ]['sitemap-include'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_sitemap_include'];
1933 self::$export_instance->data[ $termID ]['opengraph-title'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_opengraph-title'];
1934 self::$export_instance->data[ $termID ]['opengraph-description'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_opengraph-description'];
1935 self::$export_instance->data[ $termID ]['opengraph-image'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_opengraph-image'];
1936 self::$export_instance->data[ $termID ]['twitter-title'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_twitter-title'];
1937 self::$export_instance->data[ $termID ]['twitter-description'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_twitter-description'];
1938 self::$export_instance->data[ $termID ]['twitter-image'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_twitter-image'];
1939 self::$export_instance->data[ $termID ]['focus_keyword'] = $seo_yoast_taxonomies['post_tag'][$termID]['wpseo_focuskw'];
1940
1941 }
1942 }
1943 }
1944 }
1945
1946 $result = self::$export_instance->finalDataToExport(self::$export_instance->data, $module);
1947 if($mode == null)
1948 self::$export_instance->proceedExport($result);
1949 else
1950 return $result;
1951 }
1952 }
1953
1954 global $post_export_class;
1955 $post_export_class = new PostExport();
1956