WC_Post_Data::force_default_term()public staticWC 3.3.0

Ensure default category gets set.

Метод класса: WC_Post_Data{}

Хуков нет.

Возвращает

null. Ничего (null).

Использование

$result = WC_Post_Data::force_default_term( $object_id, $terms, $tt_ids, $taxonomy, $append );
$object_id(int) (обязательный)
Product ID.
$terms(массив) (обязательный)
Terms array.
$tt_ids(массив) (обязательный)
Term ids array.
$taxonomy(строка) (обязательный)
Taxonomy name.
$append(true|false) (обязательный)
Are we appending or setting terms.

Список изменений

С версии 3.3.0 Введена.

Код WC_Post_Data::force_default_term() WC 9.4.2

public static function force_default_term( $object_id, $terms, $tt_ids, $taxonomy, $append ) {
	if ( ! $append && 'product_cat' === $taxonomy && empty( $tt_ids ) && 'product' === get_post_type( $object_id ) ) {
		$default_term = absint( get_option( 'default_product_cat', 0 ) );
		$tt_ids       = array_map( 'absint', $tt_ids );

		if ( $default_term && ! in_array( $default_term, $tt_ids, true ) ) {
			wp_set_post_terms( $object_id, array( $default_term ), 'product_cat', true );
		}
	}
}