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

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

HIT

19.10.2019

3859

4

Отключаем невостребованные функции 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. Вернуть выпадающий список категорий С версии WC 3.2 изменился фильтр постов в админке, конкретно выбор категории. Теперь Читать далее »

/
Лэйблы используя PHP

Лэйблы используя PHP

Как делать создание лэйблов налету средствами jQuery используя post_class описано здесь. В данной статье сделаем вывод подобных лэйблов средствами WordPress (PHP). Данный способ даст более гибкий и универсальный подход к Читать далее »

Фильтры Woocommerce

Фильтры Woocommerce

В базовую комплектацию Woocommerce входит набор виджетов для фильтрации товаров. Но данные виджеты необходимо несколько доработать. WooCommerce Навигация по слоям В этом виджете необходимо задать атрибут товара по которому будет Читать далее »

/ /

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

4 комментария

  1. Боря

    В некоторых темах на странице магазина WooCommerce каждый отображаемый товар сопровождается строкой, указывающей имя пользователя, его опубликовавшего. Как можно отключить эту строку?

  2. Сергей

    Куда добавлять код? в какой файл?

    1. Alexandr

      Все функции обычно нужно добавлять в functions.php

  3. Владимир

    А как вообще убрать в товарах фильтр «Filter by product type», ведь у меня только один тип товара «Простой товар». А в фильтре можно выбрать как простой так и вариативный. Причем по умолчанию всегда стоит пункт Filter by product type. Неудобно каждый раз сначала выставлять этот фильтр на Простой товар, а потом уже выполнять свои собственные сортировки.

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