クラス
Routes
ソース ソース
ファイル: src/Routes.php
class Routes extends Router
{
/**
* Instantiates `Router`
*
* @author Evan D Shaw <evandanielshaw@gmail.com>
*/
public function __construct() {
parent::__construct('/wcexics', 'wcexics_nonce_key', 'wcexics_nonce_name');
}
/**
* Declares routes
*
* @author Evan D Shaw <evandanielshaw@gmail.com>
* @param WordPressRouteCollector $r
* @return void
*/
public function declareRoutes(WordPressRouteCollector $r) {
$r->addGroup('/v1', function (WordPressRouteCollector $r) {
// REST handlers
$cset = new REST\ComboSet();
$cgroup = new REST\ComboGroup();
$groupitem = new REST\GroupItem();
// Admin REST routes
$roles = ['wc_management', 'administrator', 'editor'];
$r->add('POST', '/comboset/create/{skuMetaId}', [$cset, 'create'], [], [], $roles);
$r->add('POST', '/comboset/delete/{comboSetId}', [$cset, 'delete'], [], [], $roles);
$r->add('POST', '/combogroup/create/{comboSetId}', [$cgroup, 'create'], [], [], $roles);
$r->add('POST', '/combogroup/get/{comboSetId}', [$cgroup, 'get'], [], [], $roles);
$r->add('POST', '/combogroup/update/{groupId}', [$cgroup, 'update'], [], [], $roles);
$r->add('POST', '/combogroup/delete/{groupId}', [$cgroup, 'delete'], [], [], $roles);
$r->add('POST', '/combogroup/duplicate/{groupId}', [$cgroup, 'duplicate'], [], [], $roles);
$r->add('POST', '/combogroup/reorder/{comboSetId}', [$cgroup, 'reorder'], [], [], $roles);
$r->add('POST', '/groupitem/create/{groupId}', [$groupitem, 'create'], [], [], $roles);
$r->add('POST', '/groupitem/get/{groupId}', [$groupitem, 'get'], [], [], $roles);
$r->add('POST', '/groupitem/update/{itemId}', [$groupitem, 'update'], [], [], $roles);
$r->add('POST', '/groupitem/delete/{itemId}', [$groupitem, 'delete'], [], [], $roles);
$r->add('POST', '/groupitem/reorder/{groupId}', [$groupitem, 'reorder'], [], [], $roles);
});
}
/**
* Adds routes with `usces_register_action`
*
* @author Evan D Shaw <evandanielshaw@gmail.com>
* @return void
*/
public static function declareWelcartRoutes() {
usces_register_action(
'wcexicsAddToCart',
'post',
'wcexicsAddToCart',
null,
[new API\Cart(), 'postComboSetToCart']
);
}
}
- __construct — Instantiates `Router`
- declareRoutes — Declares routes
- declareWelcartRoutes — Adds routes with `usces_register_action`