# reviewx/trunk/app/Rest/Controllers/CategoryController.php

ReviewX – Multi-Criteria Reviews for WooCommerce with Google Reviews &amp; Schema, version trunk. 59 lines.

- Page: https://pluginprobe.com/plugins/reviewx/trunk/code/app/Rest/Controllers/CategoryController.php
- Raw: https://pluginprobe.com/plugins/reviewx/trunk/raw/app/Rest/Controllers/CategoryController.php
- Modified: 2026-03-15T12:18:40+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/reviewx/trunk/code/app/Rest/Controllers/CategoryController.php#L10-L20`.

```php
<?php

namespace ReviewX\Rest\Controllers;

\defined("ABSPATH") || exit;
use ReviewX\Services\CategoryService;
use ReviewX\Utilities\Helper;
use ReviewX\WPDrill\Contracts\InvokableContract;
use ReviewX\WPDrill\Response;
class CategoryController implements InvokableContract
{
    protected $categoryService;
    /**
     * @param CategoryService $categoryService
     */
    public function __construct(CategoryService $categoryService)
    {
        $this->categoryService = $categoryService;
    }
    /**
     * @return void
     */
    public function __invoke()
    {
    }
    /**
     * @return Response
     */
    public function selectable()
    {
        $resp = $this->categoryService->selectable();
        return Helper::getApiResponse($resp);
    }
    /**
     * @return Response
     */
    public function getCategory()
    {
        $resp = $this->categoryService->getCategory();
        return Helper::getApiResponse($resp);
    }
    /**
     * @return Response
     */
    public function getCategoryAll()
    {
        $resp = $this->categoryService->getCategoryAll();
        return Helper::getApiResponse($resp);
    }
    /**
     * @return Response
     */
    public function storeCategory($request)
    {
        $resp = $this->categoryService->storeCategory($request->get_params());
        return Helper::getApiResponse($resp);
    }
}

```
