0 ) { return 'present'; } $result = wc_create_attribute( array( 'name' => self::label( $slug ), 'slug' => $slug, 'type' => 'select', 'order_by' => 'menu_order', 'has_archives' => false, ) ); if ( is_wp_error( $result ) ) { set_transient( self::FAILED_TRANSIENT, array( 'taxonomy' => $tax, 'error' => $result->get_error_message(), ), 12 * HOUR_IN_SECONDS ); return 'failed'; } delete_transient( self::FAILED_TRANSIENT ); return 'created'; } public static function last_error() { $failed = get_transient( self::FAILED_TRANSIENT ); return is_array( $failed ) && isset( $failed['error'] ) ? (string) $failed['error'] : ''; } private static function label( $slug ) { if ( 'need' === $slug ) { return __( 'Need', 'ai-eshop-optimizer' ); } return ucwords( str_replace( array( '-', '_' ), ' ', $slug ) ); } }