2014-11-23 1 views

ответ

5

Попробуйте это:

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; 
} 
2

Я обновленный ответ XciD в гораздо более чистой версии:

add_filter('wp_get_attachment_image_attributes', 'change_attachement_image_attributes', 20, 2); 
function change_attachement_image_attributes($attr, $attachment) { 
    global $post; 
    if ($post->post_type == 'product') { 
     $title = $post->post_title; 
     $attr['alt'] = $title; 
     $attr['title'] = $title; 
    } 
    return $attr; 
} 

К сожалению, на основном изображении скрипт не работает для меня (XciD не является ни) , но на маленьких превью это. Интересно :)

Обновление: если я выключу основное изображение, сценарий начнет работать со второго пальца!

Обновление 2: Хорошо. Это был «О Боже, пожалуйста, нет!» ситуация как-то плохие слова JS-код изменил тег alt. OMG ...