Automattic\WooCommerce\Internal\OrderWithdrawal
OrderWithdrawalController::add_endpoint_setting
Add the endpoint setting when the feature is enabled.
Method of the class: OrderWithdrawalController{}
No Hooks.
Returns
array.
Usage
$OrderWithdrawalController = new OrderWithdrawalController(); $OrderWithdrawalController->add_endpoint_setting( $settings ): array;
- $settings(array) (required)
- Page settings.
Changelog
| Since 11.1.0 | Introduced. |
OrderWithdrawalController::add_endpoint_setting() OrderWithdrawalController::add endpoint setting code WC 11.2.1
public function add_endpoint_setting( $settings ): array {
if ( ! is_array( $settings ) ) {
return array();
}
$endpoint_setting = array(
'title' => __( 'Order withdrawal', 'woocommerce' ),
'desc' => __( 'Endpoint for the order withdrawal page.', 'woocommerce' ),
'id' => self::ENDPOINT_OPTION,
'type' => 'text',
'default' => self::ENDPOINT_SLUG,
'desc_tip' => true,
);
$new_settings = array();
$added = false;
foreach ( $settings as $key => $setting ) {
if ( is_array( $setting ) && self::ENDPOINT_OPTION === ( $setting['id'] ?? '' ) ) {
return $settings;
}
if (
! $added &&
is_array( $setting ) &&
'sectionend' === ( $setting['type'] ?? '' ) &&
'account_endpoint_options' === ( $setting['id'] ?? '' )
) {
$new_settings[ self::ENDPOINT_OPTION ] = $endpoint_setting;
$added = true;
}
$new_settings[ $key ] = $setting;
}
if ( ! $added ) {
$new_settings[ self::ENDPOINT_OPTION ] = $endpoint_setting;
}
return $new_settings;
}