Automattic\WooCommerce\Internal
AssignDefaultCategory::maybe_assign_default_product_cat()
Assigns default product category for products that have no categories.
Метод класса: AssignDefaultCategory{}
Хуков нет.
Возвращает
null
. Ничего (null).
Использование
$AssignDefaultCategory = new AssignDefaultCategory(); $AssignDefaultCategory->maybe_assign_default_product_cat();
Код AssignDefaultCategory::maybe_assign_default_product_cat() AssignDefaultCategory::maybe assign default product cat WC 9.3.3
public function maybe_assign_default_product_cat() { global $wpdb; $default_category = get_option( 'default_product_cat', 0 ); if ( $default_category ) { $affected_rows = $wpdb->query( $wpdb->prepare( "INSERT INTO {$wpdb->term_relationships} (object_id, term_taxonomy_id) SELECT DISTINCT posts.ID, %s FROM {$wpdb->posts} posts LEFT JOIN ( SELECT object_id FROM {$wpdb->term_relationships} term_relationships LEFT JOIN {$wpdb->term_taxonomy} term_taxonomy ON term_relationships.term_taxonomy_id = term_taxonomy.term_taxonomy_id WHERE term_taxonomy.taxonomy = 'product_cat' ) AS tax_query ON posts.ID = tax_query.object_id WHERE posts.post_type = 'product' AND tax_query.object_id IS NULL", $default_category ) ); if ( $affected_rows > 0 ) { wp_cache_flush(); delete_transient( 'wc_term_counts' ); wp_update_term_count_now( array( $default_category ), 'product_cat' ); } } }