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

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

19.10.2019

620

Отключаем невостребованные функции 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 и валюта

Разбираем различные решения по работе с валютами (не мультивалютность, это отдельная тема). Курс в другой валюте Если мы торгуем на сайте в рублях, но нам нужно чтобы рядом с каждой Читать далее »

Количество товара

Количество товара

Количество товара (quantity) — один важнейших элементов функционала интернет-магазина (woocommerce в частности). Есть множество нюансов связанных с количеством товара, рассмотрим их. Вывод количества в категориях товаров По-умолчанию в шаблоне вывода Читать далее »

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

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

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

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

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

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