HEX
Server: nginx/1.24.0
System: Linux webserver 6.8.0-59-generic #61-Ubuntu SMP PREEMPT_DYNAMIC Fri Apr 11 23:16:11 UTC 2025 x86_64
User: wpuser (1002)
PHP: 8.3.6
Disabled: NONE
Upload Files
File: /opt/wpsites/datainsightnow.com/wp-content/plugins/essential-blocks/includes/API/Base.php
<?php

namespace EssentialBlocks\API;

use EssentialBlocks\Utils\Helper;
use EssentialBlocks\Traits\HasSingletone;
use WP_REST_Server;

abstract class Base {
	use HasSingletone;

	/**
	 * Register REST Routes
	 *
	 * @return void
	 */
	abstract function register();

	public function register_endpoint( $endpoint, $args = array() ) {
		register_rest_route( 'essential-blocks/v1', $endpoint, $args );
	}

	public function get( $endpoint, $args = array() ) {
		$_args = wp_parse_args(
			$args,
			array(
				'methods'             => WP_REST_Server::READABLE,
				'permission_callback' => '__return_true',
			)
		);

		$this->register_endpoint( $endpoint, $_args );
	}

	public function post( $endpoint, $args = array() ) {
		$_args = wp_parse_args(
			$args,
			array(
				'methods'             => WP_REST_Server::CREATABLE,
				'permission_callback' => '__return_true',
			)
		);

		$this->register_endpoint( $endpoint, $_args );
	}
}