Create New Item
×
Item Type
File
Folder
Item Name
×
Search file in folder and subfolders...
File Manager
/
wp-content
/
plugins
/
woocommerce
/
includes
/
legacy
/
api
/
v2
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php if (!defined('ABSPATH')) { exit; } class WC_API_JSON_Handler implements WC_API_Handler { public function get_content_type() { return sprintf('%s; charset=%s', isset($_GET['_jsonp']) ? 'application/javascript' : 'application/json', get_option('blog_charset')); } public function parse_body($body) { return json_decode($body, true); } public function generate_response($data) { if (isset($_GET['_jsonp'])) { if (!apply_filters('woocommerce_api_jsonp_enabled', true)) { WC()->api->server->send_status(400); return wp_json_encode(array(array('code' => 'woocommerce_api_jsonp_disabled', 'message' => __('JSONP support is disabled on this site', 'woocommerce')))); } $jsonp_callback = $_GET['_jsonp']; if (!wp_check_jsonp_callback($jsonp_callback)) { WC()->api->server->send_status(400); return wp_json_encode(array(array('code' => 'woocommerce_api_jsonp_callback_invalid', __('The JSONP callback function is invalid', 'woocommerce')))); } WC()->api->server->header('X-Content-Type-Options', 'nosniff'); return '/**/' . $jsonp_callback . '(' . wp_json_encode($data) . ')'; } return wp_json_encode($data); } }