Attributes not clickable
-
Hi there,
I would like to reformat my list of attributes. With the code below, I have now a simple list, but I don’t want attributes clickable.
The line is this in the code$attribute_label = wc_attribute_label( $taxonomy );
$html .= get_the_term_list( $product->get_id(), $taxonomy, ‘- ‘ . $attribute_label . ‘: ‘ , ‘, ‘, ‘
- ‘ . $attribute_label . ‘: ‘ , ‘, ‘, ‘
‘ );
How can I do that.
Thx for your help.
Best regards.
Catherine.
The full code :
function MS_0001_attributes_shortcode( $atts ) {
global $product;
if( ! is_object( $product ) || ! $product->has_attributes() ){
return;
}// parse the shortcode attributes
$args = shortcode_atts( array(
‘attributes’ => array_keys( $product->get_attributes() ), // by default show all attributes
), $atts );// is pass an attributes param, turn into array
if( is_string( $args[‘attributes’] ) ){
$args[‘attributes’] = array_map( ‘trim’, explode( ‘|’ , $args[‘attributes’] ) );
}// start with a null string because shortcodes need to return not echo a value
$html = ”;if( ! empty( $args[‘attributes’] ) ){
foreach ( $args[‘attributes’] as $attribute ) {
// get the WC-standard attribute taxonomy name
$taxonomy = strpos( $attribute, ‘pa_’ ) === false ? wc_attribute_taxonomy_name( $attribute ) : $attribute;if( taxonomy_is_product_attribute( $taxonomy ) ){
// Get the attribute label.
$attribute_label = wc_attribute_label( $taxonomy );// Build the html string with the label followed by a clickable list of terms.
$html .= get_the_term_list( $product->get_id(), $taxonomy, ‘
‘ );
}
}
// if we have anything to display, wrap it in a
- for proper markup
- elements
if( $html ){
$html = ‘<ul class=”MS-product-attributes”>’ . $html . ‘
// OR: delete these lines if you only wish to return the‘;
}}
return $html;
}
add_shortcode( ‘display_attributes’, ‘MS_0001_attributes_shortcode’ );
The topic ‘Attributes not clickable’ is closed to new replies.