Submit
Path:
~
/
home
/
getwphos
/
www
/
almajd14
/
wp-content
/
plugins
/
woocommerce
/
includes
/
rest-api
/
Controllers
/
Version3
/
File Content:
class-wc-rest-layout-templates-controller.php
<?php /** * REST API Layout Templates controller * * Handles requests to /layout-templates. * * @package WooCommerce\RestApi * @since 8.6.0 */ defined( 'ABSPATH' ) || exit; use Automattic\WooCommerce\LayoutTemplates\LayoutTemplateRegistry; /** * REST API Layout Templates controller class. */ class WC_REST_Layout_Templates_Controller extends WC_REST_Controller { /** * Endpoint namespace. * * @var string */ protected $namespace = 'wc/v3'; /** * Route base. * * @var string */ protected $rest_base = 'layout-templates'; /** * Register the routes for template layouts. */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => array( 'area' => array( 'description' => __( 'Area to get templates for.', 'woocommerce' ), 'type' => 'string', 'default' => '', ), ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<id>\w[\w\s\-]*)', array( 'args' => array( 'id' => array( 'description' => __( 'Unique identifier for the resource.', 'woocommerce' ), 'type' => 'string', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array(), ), ) ); } /** * Check if a given request has access to read template layouts. * * @param WP_REST_Request $request The request. */ public function get_items_permissions_check( $request ): bool { return true; } /** * Check if a given request has access to read a template layout. * * @param WP_REST_Request $request The request. */ public function get_item_permissions_check( $request ): bool { return true; } /** * Handle request for template layouts. * * @param WP_REST_Request $request The request. */ public function get_items( $request ) { $layout_templates = $this->get_layout_templates( array( 'area' => $request['area'], ) ); $response = rest_ensure_response( $layout_templates ); return $response; } /** * Handle request for a single template layout. * * @param WP_REST_Request $request The request. */ public function get_item( $request ) { $layout_templates = $this->get_layout_templates( array( 'id' => $request['id'], ) ); if ( count( $layout_templates ) !== 1 ) { return new WP_Error( 'woocommerce_rest_layout_template_invalid_id', __( 'Invalid layout template ID.', 'woocommerce' ), array( 'status' => 404 ) ); } $response = rest_ensure_response( current( $layout_templates ) ); return $response; } /** * Get layout templates. * * @param array $query_params Query params. */ private function get_layout_templates( array $query_params ): array { $layout_template_registry = wc_get_container()->get( LayoutTemplateRegistry::class ); return array_map( function( $layout_template ) { return $layout_template->to_json(); }, $layout_template_registry->instantiate_layout_templates( $query_params ) ); } }
Edit
Rename
Chmod
Delete
FILE
FOLDER
Name
Size
Permission
Action
class-wc-rest-controller.php
19308 bytes
0644
class-wc-rest-coupons-controller.php
988 bytes
0644
class-wc-rest-crud-controller.php
24416 bytes
0644
class-wc-rest-customer-downloads-controller.php
537 bytes
0644
class-wc-rest-customers-controller.php
9496 bytes
0644
class-wc-rest-data-continents-controller.php
11096 bytes
0644
class-wc-rest-data-controller.php
4835 bytes
0644
class-wc-rest-data-countries-controller.php
6768 bytes
0644
class-wc-rest-data-currencies-controller.php
6285 bytes
0644
class-wc-rest-layout-templates-controller.php
3409 bytes
0644
class-wc-rest-network-orders-controller.php
506 bytes
0644
class-wc-rest-order-notes-controller.php
6028 bytes
0644
class-wc-rest-order-refunds-controller.php
6210 bytes
0644
class-wc-rest-orders-controller.php
16086 bytes
0644
class-wc-rest-payment-gateways-controller.php
9191 bytes
0644
class-wc-rest-posts-controller.php
23907 bytes
0644
class-wc-rest-product-tags-controller.php
495 bytes
0644
class-wc-rest-products-controller.php
73768 bytes
0644
class-wc-rest-refunds-controller.php
4995 bytes
0644
class-wc-rest-report-coupons-totals-controller.php
3533 bytes
0644
class-wc-rest-report-customers-totals-controller.php
3881 bytes
0644
class-wc-rest-report-orders-totals-controller.php
3261 bytes
0644
class-wc-rest-report-products-totals-controller.php
3310 bytes
0644
class-wc-rest-report-reviews-totals-controller.php
3384 bytes
0644
class-wc-rest-report-sales-controller.php
490 bytes
0644
class-wc-rest-report-top-sellers-controller.php
520 bytes
0644
class-wc-rest-reports-controller.php
1642 bytes
0644
class-wc-rest-setting-options-controller.php
7563 bytes
0644
class-wc-rest-settings-controller.php
3194 bytes
0644
class-wc-rest-shipping-methods-controller.php
513 bytes
0644
class-wc-rest-shipping-zone-locations-controller.php
556 bytes
0644
class-wc-rest-shipping-zone-methods-controller.php
1088 bytes
0644
class-wc-rest-shipping-zones-controller-base.php
3756 bytes
0644
class-wc-rest-shipping-zones-controller.php
496 bytes
0644
class-wc-rest-system-status-controller.php
495 bytes
0644
class-wc-rest-system-status-tools-controller.php
528 bytes
0644
class-wc-rest-tax-classes-controller.php
491 bytes
0644
class-wc-rest-taxes-controller.php
3627 bytes
0644
class-wc-rest-webhooks-controller.php
634 bytes
0644
N4ST4R_ID | Naxtarrr