*/ namespace StorePlugin\CustomOrderStatus\MetaBox; use StorePlugin\CustomOrderStatus\Abstracts\AbstractMetaBoxes; use StorePlugin\CustomOrderStatus\Contracts\ServiceInterface; /** * OrderStatusMeta * * WooCommerce custom order status post type metabox */ class OrderStatusMeta extends AbstractMetaBoxes implements ServiceInterface { protected function ID(): string { return 'wc_order_status_meta'; } protected function title(): string { return 'Order Statuses\' Fields'; } protected function screen(): string { return 'wc_order_status'; } /** * Order status input fields * * @param string $prefix * @return void */ protected function addFields($prefix = '') { $fields = array( array( 'name' => __('Status Title', 'advanced-custom-order-status-for-woocommerce'), 'desc' => __('Enter order status title', 'advanced-custom-order-status-for-woocommerce'), 'id' => "{$prefix}_title_status", 'type' => 'text', 'placeholder' => __('Enter order status title', 'advanced-custom-order-status-for-woocommerce'), 'required' => true, ), array( 'name' => __('Status Slug', 'advanced-custom-order-status-for-woocommerce'), 'desc' => __('Enter the order status slug. If left blank, the title will be automatically converted to a slug.', 'advanced-custom-order-status-for-woocommerce'), 'id' => "{$prefix}_slug_status", 'type' => 'slug', 'placeholder' => __('Enter order status slug', 'advanced-custom-order-status-for-woocommerce'), ), array( 'name' => __('Description', 'advanced-custom-order-status-for-woocommerce'), 'desc' => __('Enter order status descriptions', 'advanced-custom-order-status-for-woocommerce'), 'id' => "{$prefix}_desc_status", 'type' => 'textarea', 'placeholder' => __('Enter order status descriptions', 'advanced-custom-order-status-for-woocommerce'), ), array( 'name' => __('Status Text Color', 'advanced-custom-order-status-for-woocommerce'), 'desc' => __('Enter the status text color. If an icon is set, the color will be applied to the icon.', 'advanced-custom-order-status-for-woocommerce'), 'tip-desc' => __('Enter the status text color. If an icon is set, the color will be applied to the icon.', 'advanced-custom-order-status-for-woocommerce'), 'id' => "{$prefix}_color_status", 'type' => 'color', 'default' => '#777' ), array( 'name' => __('Status Background Color', 'advanced-custom-order-status-for-woocommerce'), 'desc' => __('Enter the status background color.', 'advanced-custom-order-status-for-woocommerce'), 'tip-desc' => __('Enter the status background color.', 'advanced-custom-order-status-for-woocommerce'), 'id' => "{$prefix}_bg_color_status", 'type' => 'color', 'default' => '#e5e5e5' ), array( 'id' => "{$prefix}_order_status_default", 'type' => 'hidden', 'default' => '', 'tr-class' => 'spcos-tr-hidden', ), ); $orderStatusFields = apply_filters( 'wc_order_status_fields', $fields, $prefix = '' ); return $orderStatusFields; } }