/ Плагины / Отключаем лишний функционал Woocommerce

Отключаем лишний функционал Woocommerce

19.10.2019

587

Отключаем невостребованные функции Woocommerce, чтобы было легче работать, не захламлять админку и не путать заказчиков.

Отключить типы товаров

add_filter( 'product_type_selector', 'misha_remove_grouped_and_external' );
 
function misha_remove_grouped_and_external( $product_types ){
 
	unset( $product_types['grouped'] );
	unset( $product_types['external'] );
	//unset( $product_types['variable'] );
 
	return $product_types;
}

Если существуют товары отключенного типа — они не будут доступны в админке, т.е. их нужно заранее перевести в другой тип.

Удалить чекбоксы виртуальный и загружаемый товары

add_filter( 'product_type_options', function( $options ) {
 
	// remove "Virtual" checkbox
	if( isset( $options[ 'virtual' ] ) ) {
		unset( $options[ 'virtual' ] );
	}
 
	// remove "Downloadable" checkbox
	if( isset( $options[ 'downloadable' ] ) ) {
		unset( $options[ 'downloadable' ] );
	}
 
	return $options;
 
} );

Удалить их также из фильтра админки:

add_filter( 'woocommerce_products_admin_list_table_filters', function( $filters ) {
 
	if( isset( $filters[ 'product_type' ] ) ) {
		$filters[ 'product_type' ] = 'misha_product_type_callback';
	}
	return $filters;
 
});
 
function misha_product_type_callback(){
	$current_product_type = isset( $_REQUEST['product_type'] ) ? wc_clean( wp_unslash( $_REQUEST['product_type'] ) ) : false;
	$output               = '<select name="product_type" id="dropdown_product_type"><option value="">Filter by product type</option>';
 
	foreach ( wc_get_product_types() as $value => $label ) {
		$output .= '<option value="' . esc_attr( $value ) . '" ';
		$output .= selected( $value, $current_product_type, false );
		$output .= '>' . esc_html( $label ) . '</option>';
	}
 
	$output .= '</select>';
	echo $output;
}

Лишний код

Недавно, по видимому с приходом редактора Gutenberg в коде woocommerce стало выводиться куча лишнего кода (wc_product_block_data). Отключаем это:

add_action('wp_footer','wooexperts_remove_block_data',0);
add_action('admin_enqueue_scripts','wooexperts_remove_block_data',0);
function wooexperts_remove_block_data(){ 
    remove_filter('wp_print_footer_scripts',array('Automattic\WooCommerce\Blocks\Assets','print_script_block_data'),1);
    remove_filter('admin_print_footer_scripts',array('Automattic\WooCommerce\Blocks\Assets','print_script_block_data'),1);
}

Тэги:

Поделится информацией с друзьями

  • Похожие записи
  • Комментарии
  • Вложения
Единица измерения товара

Единица измерения товара

В связи с растущими потребностями к функционалу интернет-магазинов будем создавать востребованный функционал на базе плагина Woocommerce. Единица измерения товара Если необходимо выводить единицу товара (шт, кв.м, упаковка, пог.м, и т.д.), Читать далее »

Разбираем woocommerce на молекулы

Разбираем woocommerce на молекулы

В данном материале разбираем некоторые хуки woocommerce, их последовательность, а также в структуру шаблонов WC и их проверку. Добавляем стандартные хлебные крошки WC <?php woocommerce_breadcrumb(); ?> Файлы шаблона: archive-product.php — Читать далее »

Счет на оплату

Счет на оплату

Дорабатываем стандартный функционал Woocommerce, добавляя в него генерацию и отправку счета на оплату. А также прочие способы дополнительных автоматических вложений: накладная, квитанция. Плагин WooCommerce PDF Invoices & Packing Slips У Читать далее »

Добавить комментарий

Пока нет комментариев. Будь первым!

Отключаем лишний функционал Woocommerce
Панель форматирования комментария
Рекомендации для васПанель форматирования комментарияOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.