| Server IP : 145.239.37.162 / Your IP : 216.73.217.127 Web Server : Apache System : Linux webm003.cluster130.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : verseaa ( 38250) PHP Version : 7.4.33 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/verseaa/www1/wp-content/plugins/elementor/data/v2/base/endpoint/index/ |
Upload File : |
<?php
namespace Elementor\Data\V2\Base\Endpoint\Index;
use Elementor\Data\V2\Base\Endpoint\Index;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
/**
* Class SubIndexEndpoint is default `Base\Endpoint\Index` of `SubController`,
* it was created to handle base_route and format for child controller, index endpoint.
* In case `SubController` were used and the default method of `Controller::register_index_endpoint` ain't overridden.
* this class will give support to have such routes, eg: 'alpha/{id}/beta/{sub_id}' without using additional endpoints.
*/
final class Sub_Index_Endpoint extends Index {
/***
* @var \Elementor\Data\V2\Base\Controller
*/
public $controller;
public function get_format() {
return $this->controller->get_parent()->get_name() . '/{id}/' . $this->controller->get_name() . '/{sub_id}';
}
public function get_base_route() {
$parent_controller = $this->controller->get_parent();
$parent_index_endpoint = $parent_controller->index_endpoint;
$parent_controller_route = '';
// In case `$parent_index_endpoint` is AllChildren, it cannot support id_arg_name.
if ( ! $parent_index_endpoint instanceof AllChildren ) {
$parent_controller_route = "(?P<{$parent_index_endpoint->id_arg_name}>[\w]+)";
}
return untrailingslashit('/' . implode( '/', array_filter( [
trim( $parent_index_endpoint->get_base_route(), '/' ),
$parent_controller_route,
$this->controller->get_name(),
$this->get_public_name(),
] ) ) );
}
}