Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/tutor/restapi/REST_Author.php
Keine Baseline-Datei – Diff nur gegen leer.
1
-
1
+
<?php
2
+
/**
3
+
* REST API for author details.
4
+
*
5
+
* @package Tutor\RestAPI
6
+
* @author Themeum <support@themeum.com>
7
+
* @link https://themeum.com
8
+
* @since 1.7.1
9
+
*/
10
+
11
+
namespace TUTOR;
12
+
13
+
use WP_REST_Request;
14
+
15
+
if ( ! defined( 'ABSPATH' ) ) {
16
+
exit;
17
+
}
18
+
19
+
/**
20
+
* Class REST_Author
21
+
*
22
+
* @package Tutor
23
+
* @since 1.0.0
24
+
*/
25
+
class REST_Author {
26
+
27
+
use REST_Response;
28
+
29
+
/**
30
+
* User ID.
31
+
*
32
+
* @var int $user_id The ID of the user.
33
+
*/
34
+
private $user_id;
35
+
36
+
/**
37
+
* Retrieve author details via REST API.
38
+
*
39
+
* @param WP_REST_Request $request The REST request object.
40
+
*
41
+
* @return mixed
42
+
*/
43
+
public function author_detail( WP_REST_Request $request ) {
44
+
$this->user_id = $request->get_param( 'id' );
45
+
46
+
$user_data = get_userdata( $this->user_id );
47
+
48
+
// Author object.
49
+
$author = is_a( $user_data, 'WP_User' ) ? $user_data->data : false;
50
+
51
+
if ( $author ) {
52
+
// Unset user pass & key.
53
+
unset( $author->user_pass );
54
+
unset( $author->user_activation_key );
55
+
56
+
// Get author course ID.
57
+
$author->courses = get_user_meta( $this->user_id, '_tutor_instructor_course_id', false );
58
+
59
+
$response = array(
60
+
'code' => 'success',
61
+
'message' => __( 'Author details retrieved successfully', 'tutor' ),
62
+
'data' => $author,
63
+
);
64
+
65
+
return self::send( $response );
66
+
}
67
+
68
+
$response = array(
69
+
'code' => 'invalid_id',
70
+
'message' => __( 'Author not found', 'tutor' ),
71
+
'data' => array(),
72
+
);
73
+
74
+
return self::send( $response );
75
+
}
76
+
}
77
+