golden hour
/home/godaofbq/dev.hyperredbed.com/wp-content/plugins/shopengine/trunk/base
⬆️ Go Up
Upload
File/Folder
Size
Actions
api.php
1.01 KB
Del
OK
common.php
647 B
Del
OK
cpt.php
586 B
Del
OK
list-model.php
3.61 KB
Del
OK
widget-config.php
870 B
Del
OK
widget.php
1.75 KB
Del
OK
Edit: api.php
<?php namespace ShopEngine\Base; defined('ABSPATH') || exit; abstract class Api { public $prefix = ''; public $param = ''; public $request = null; public $only_admin = false; abstract public function config(); public function __construct() { $this->config(); $this->init(); } public function init() { add_action('rest_api_init', function() { register_rest_route(untrailingslashit(\ShopEngine::SHOPENGINE_PREFIX.'/v1/' . $this->prefix), '/(?P<action>\w+)/' . ltrim($this->param, '/'), array( 'methods' => \WP_REST_Server::ALLMETHODS, 'callback' => [$this, 'action'], 'permission_callback' => function() { if($this->only_admin) { return current_user_can('edit_others_posts'); } return true; }, )); }); } public function action($request) { $this->request = $request; $action_class = strtolower($this->request->get_method()) . '_' . sanitize_key($this->request['action']); if(method_exists($this, $action_class)) { return $this->{$action_class}(); } } }
Save