Screenshoot: latest.png

Prompt: Screenshoot: latest.png

Odgovor:


// Hook to initialize the REST API
add_action('rest_api_init', function() {
    // Register a new REST route
    register_rest_route('mock-api/v1', '/review-history', array(
        'methods' => 'GET', // Define HTTP method
        'callback' => 'get_review_history', // Define callback function
    ));
});

// Callback function to handle the endpoint
function get_review_history() {
    // Query for the last 5 product reviews
    $reviews = get_posts(array(
        'post_type' => 'product_review', // Define custom post type
        'numberposts' => 5, // Limit to 5 reviews
        'orderby' => 'date', // Order by date
        'order' => 'DESC', // Latest first
    ));

    // Prepare data for JSON response
    $data = array();
    foreach ($reviews as $review) {
        $sentiment = get_post_meta($review->ID, 'sentiment', true); // Retrieve sentiment
        $score = get_post_meta($review->ID, 'score', true); // Retrieve score
        $data[] = array(
            'id' => $review->ID,
            'title' => $review->post_title,
            'sentiment' => $sentiment,
            'score' => $score,
        );
    }

    // Return the data as JSON
    return rest_ensure_response($data);
}

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *