*/ namespace StorePlugin\CustomOrderStatus\OrderPostTypes; use StorePlugin\CustomOrderStatus\Contracts\ServiceInterface; /** * Post type cleaning from useless features for custom order status */ class CleanPostType implements ServiceInterface { public function register(): void { \add_action( 'restrict_manage_posts', [$this, 'removePostSearchFilter'] ); \add_action( 'post_submitbox_misc_actions', [$this, 'removeUnnecessaryStatusInfo'] ); \add_filter( 'months_dropdown_results', [$this, 'removeStatusDateFilter'], 10, 2 ); } /** * Check the current screen of order status post * * @return bool */ protected function is_order_status_screen() { if ( ! function_exists( 'get_current_screen') ) return false; $screen = get_current_screen(); return $screen && in_array( $screen->id, array( 'wc_order_status', 'edit-wc_order_status', 'wc_order_email', 'edit-wc_order_email', ), true ); } /** * Hide order status post filters and search bar. * * @return void */ public function removePostSearchFilter() { if( $this->is_order_status_screen() ) { ?> is_order_status_screen() ) { ?>