wc_product_post_class()
Adds extra post classes for products via the WordPress post_class hook, if used.
Note: For performance reasons we instead recommend using wc_product_class/wc_get_product_class instead.
Хуков нет.
Возвращает
Массив
.
Использование
wc_product_post_class( $classes, $class, $post_id );
- $classes(массив) (обязательный)
- Current classes.
- $class(строка|массив)
- Additional class.
По умолчанию: '' - $post_id(int)
- Post ID.
Список изменений
С версии 2.1.0 | Введена. |
Код wc_product_post_class() wc product post class WC 8.7.0
function wc_product_post_class( $classes, $class = '', $post_id = 0 ) { if ( ! $post_id || ! in_array( get_post_type( $post_id ), array( 'product', 'product_variation' ), true ) ) { return $classes; } $product = wc_get_product( $post_id ); if ( ! $product ) { return $classes; } $classes[] = 'product'; $classes[] = wc_get_loop_class(); $classes[] = $product->get_stock_status(); if ( $product->is_on_sale() ) { $classes[] = 'sale'; } if ( $product->is_featured() ) { $classes[] = 'featured'; } if ( $product->is_downloadable() ) { $classes[] = 'downloadable'; } if ( $product->is_virtual() ) { $classes[] = 'virtual'; } if ( $product->is_sold_individually() ) { $classes[] = 'sold-individually'; } if ( $product->is_taxable() ) { $classes[] = 'taxable'; } if ( $product->is_shipping_taxable() ) { $classes[] = 'shipping-taxable'; } if ( $product->is_purchasable() ) { $classes[] = 'purchasable'; } if ( $product->get_type() ) { $classes[] = 'product-type-' . $product->get_type(); } if ( $product->is_type( 'variable' ) && $product->get_default_attributes() ) { $classes[] = 'has-default-attributes'; } $key = array_search( 'hentry', $classes, true ); if ( false !== $key ) { unset( $classes[ $key ] ); } return $classes; }