Adding alt tag information to every product photo is a lot of work. We always just copy and paste our product title into the image alt tags.
I figured since all the information is there; there must be a way to do this automatically.
Question: How do you apply a woocommerce product's TITLE as all the ALT TAGS for images used with that product.
Any help is much appreciated!
Adding alt tag information to every product photo is a lot of work. We always just copy and paste our product title into the image alt tags.
I figured since all the information is there; there must be a way to do this automatically.
Question: How do you apply a woocommerce product's TITLE as all the ALT TAGS for images used with that product.
Any help is much appreciated!
Share Improve this question edited Feb 26, 2017 at 9:58 Patrick asked Feb 26, 2017 at 9:13 PatrickPatrick 2953 gold badges10 silver badges26 bronze badges 1- This is what you want mate, already been asked before :) stackoverflow/questions/27087772/… – Richard Webster Commented Feb 26, 2017 at 9:31
3 Answers
Reset to default 9This is what you need, taken from - https://stackoverflow/questions/27087772/how-can-i-change-meta-alt-and-title-in-catalog-thumbnail-product-thumbnail
add_filter('wp_get_attachment_image_attributes', 'change_attachement_image_attributes', 20, 2);
function change_attachement_image_attributes( $attr, $attachment ){
// Get post parent
$parent = get_post_field( 'post_parent', $attachment);
// Get post type to check if it's product
$type = get_post_field( 'post_type', $parent);
if( $type != 'product' ){
return $attr;
}
/// Get title
$title = get_post_field( 'post_title', $parent);
$attr['alt'] = $title;
$attr['title'] = $title;
return $attr;
}
For anyone searching, I would recommend editing the code above so if a product image already has an alt tag do not override it with the post title. This way you can still add product image titles if necessary.
add_filter('wp_get_attachment_image_attributes', 'change_attachement_image_attributes', 20, 2);
function change_attachement_image_attributes( $attr, $attachment ) {
// Get post parent
$parent = get_post_field( 'post_parent', $attachment);
// Get post type to check if it's product
$type = get_post_field( 'post_type', $parent);
if( $type != 'product' ){
return $attr;
}
/// Get title
$title = get_post_field( 'post_title', $parent);
if( $attr['alt'] == ''){
$attr['alt'] = $title;
$attr['title'] = $title;
}
return $attr;
}
If anyone is looking for a fast and easy way to use product titles as product image alt tags, I recommend the Woo Image SEO plugin.
The plugin can also handle the creation of title attributes.
Additionally, you can customize the attributes by including the product's category and tag in any order.