Automattic\WooCommerce\Internal\ProductAttributes
VisualAttributeTermAdmin::add_visual_data_to_attribute_terms
Add visual swatch data to attribute term search results.
Method of the class: VisualAttributeTermAdmin{}
No Hooks.
Returns
array|\WP_Error.
Usage
$VisualAttributeTermAdmin = new VisualAttributeTermAdmin(); $VisualAttributeTermAdmin->add_visual_data_to_attribute_terms( $terms, $taxonomy );
- $terms(array|\WP_Error) (required)
- The list of matched terms.
- $taxonomy(string) (required)
- The terms taxonomy.
VisualAttributeTermAdmin::add_visual_data_to_attribute_terms() VisualAttributeTermAdmin::add visual data to attribute terms code WC 11.0.1
public function add_visual_data_to_attribute_terms( $terms, string $taxonomy ) {
if ( is_wp_error( $terms ) || empty( $terms ) || ! VisualAttributeTermMeta::is_visual_attribute_taxonomy( $taxonomy ) ) {
return $terms;
}
// Because `$terms` might be filtered by a plugin, make sure we only operate on valid terms.
$valid_terms = array_filter(
$terms,
static function ( $term ) {
return is_object( $term ) && isset( $term->term_id );
}
);
$term_ids = array_map( 'intval', wp_list_pluck( $valid_terms, 'term_id' ) );
$visuals = VisualAttributeTermMeta::get_term_visuals( $term_ids );
foreach ( $valid_terms as $term ) {
/**
* Term object with dynamic visual property.
*
* @var \stdClass $term
*/
$term->visual = $visuals[ $term->term_id ] ?? VisualAttributeTermMeta::get_empty_visual();
}
return $terms;
}