Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/tutor-pro/tools/importers/ReviewImporter.php
Keine Baseline-Datei – Diff nur gegen leer.
1
-
1
+
<?php
2
+
/**
3
+
* Review Importer
4
+
*
5
+
* @package TutorPro\Tools
6
+
* @author Themeum<support@themeum.com>
7
+
* @link https://themeum.com
8
+
* @since 3.8.1
9
+
*/
10
+
11
+
namespace TutorPro\Tools;
12
+
13
+
use Tutor\Helpers\QueryHelper;
14
+
use TUTOR\Input;
15
+
16
+
if ( ! defined( 'ABSPATH' ) ) {
17
+
exit;
18
+
}
19
+
20
+
/**
21
+
* ReviewImporter class
22
+
*/
23
+
class ReviewImporter {
24
+
25
+
/**
26
+
* Insert tutor course reviews.
27
+
*
28
+
* @since 3.8.1
29
+
*
30
+
* @param array $review_data the course review data.
31
+
*
32
+
* @return int|\WP_Error
33
+
*/
34
+
public function insert_reviews( array $review_data ) {
35
+
36
+
$content_map = ContentMapHandler::get_content_map();
37
+
$courses_map = $content_map['courses'] ?? null;
38
+
$user_map = $content_map['users'] ?? null;
39
+
40
+
unset( $content_map );
41
+
42
+
$reviews = $review_data['review'] ?? null;
43
+
$review_meta = $review_data['review_meta'] ?? null;
44
+
45
+
unset( $review_data['review'] );
46
+
unset( $review_data['review_meta'] );
47
+
48
+
$course_id = $reviews['comment_post_ID'] ?? 0;
49
+
$user_id = $reviews['user_id'] ?? 0;
50
+
51
+
$course_map = $courses_map[ $course_id ] ?? null;
52
+
53
+
if ( $course_map ) {
54
+
$course_id = $course_map['course_id'] ?? $course_id;
55
+
unset( $courses_map );
56
+
}
57
+
58
+
if ( isset( $user_map[ $user_id ] ) ) {
59
+
$user_id = $user_map[ $user_id ];
60
+
unset( $user_map );
61
+
}
62
+
63
+
unset( $reviews['comment_ID'] );
64
+
65
+
$reviews['comment_post_ID'] = $course_id;
66
+
$reviews['user_id'] = $user_id;
67
+
68
+
$review_id = wp_insert_comment( $reviews );
69
+
70
+
if ( ! $review_id ) {
71
+
return new \WP_Error( 'review_insert_failed', __( 'Error inserting course review', 'tutor-pro' ) );
72
+
}
73
+
74
+
if ( isset( $review_meta['tutor_rating'] ) ) {
75
+
update_comment_meta( $review_id, 'tutor_rating', $review_meta['tutor_rating'][0] ?? 0 );
76
+
}
77
+
78
+
unset( $reviews );
79
+
unset( $review_meta );
80
+
81
+
return $review_id;
82
+
}
83
+
}
84
+