WC_Product_Variation_Data_Store_CPT::generate_product_title( WC_Product $product )
Generates a title with attribute information for a variation.
Description Description
Products will get a title of the form "Name – Value, Value" or just "Name".
Parameters Parameters
- $product
-
(Required) Product object.
Return Return
(string)
Source Source
File: includes/data-stores/class-wc-product-variation-data-store-cpt.php
protected function generate_product_title( $product ) {
$attributes = (array) $product->get_attributes();
// Do not include attributes if the product has 3+ attributes.
$should_include_attributes = count( $attributes ) < 3;
// Do not include attributes if an attribute name has 2+ words and the
// product has multiple attributes.
if ( $should_include_attributes && 1 < count( $attributes ) ) {
foreach ( $attributes as $name => $value ) {
if ( false !== strpos( $name, '-' ) ) {
$should_include_attributes = false;
break;
}
}
}
$should_include_attributes = apply_filters( 'woocommerce_product_variation_title_include_attributes', $should_include_attributes, $product );
$separator = apply_filters( 'woocommerce_product_variation_title_attributes_separator', ' - ', $product );
$title_base = get_post_field( 'post_title', $product->get_parent_id() );
$title_suffix = $should_include_attributes ? wc_get_formatted_variation( $product, true, false ) : '';
return apply_filters( 'woocommerce_product_variation_title', $title_suffix ? $title_base . $separator . $title_suffix : $title_base, $product, $title_base, $title_suffix );
}
Changelog Changelog
| Version | Description |
|---|---|
| 3.0.0 | Introduced. |