Для WordPress текущая тема, с которой я работаю, не имеет alt-тегов, указанных для изображений слайдера.Так как разработчики не признают, что это проблема с темой (а скорее, выбор не использовать alt-тэги), я не могу получить от них никакой помощи.
Итак, я нашел код, который выводит тег img для каждого слайда.Однако фактического вывода здесь нет, поэтому я не могу добавить тег alt вручную в код.
Это часть, которая отображает слайды:
function render_slideshow(){
if(post_password_required($this->post_id)){ return false; }
$output = "";
$i = 0;
$output .= $this->before_container_html;
if($this->slide_number){
$output .= '<div class="slideshow_container '.esc_attr($this->slide_container_class).' slide_layout_'.esc_attr($this->options['slideshow_layout']).'" id="'.esc_attr($this->slide_container_id).'flex" '.esc_attr($this->additional_attr).'>';
$output .= $this->custom_header_html;
$output .= ' <ul class="'.esc_attr($this->slide_ul_class).' slide_'.esc_attr($this->slide_type).'">';
$output .= $this->before_elements;
foreach($this->slides as $slide):
$i++;
$image = "";
if(!empty($slide['attachment_id']))
{
$m_d = '';
if(isset($this->media_img_data[$i]) && !empty($this->media_img_data[$i]))
$m_d = $this->media_img_data[$i];
$image_string = codeless_image_by_id($slide['attachment_id'], $this->img_size, 'image', $m_d);
if(!$image_string) $image_string = $slide['attachment_id'];
if(isset($slide['url']) && $slide['url'] != 'http://')
{
$image = "<a href='".esc_url($slide['url'])."'>".$image_string."</a>";
}else
$image = $image_string;
}
$output .= "<li class='".esc_attr($this->slide_element_class)." slide_element slide".$i." frame".$i."'>";
if(!is_array($this->before_render_media))
$output .= $this->before_render_media;
else
$output .= $this->before_render_media[$i];
$output .= $image;
$output .= $this->after_render_media;
if(isset($slide['title']) && strlen($slide['title']) > 1){
$output .= $this->after_render_media; $output .= '<div class="captionss">';
$output .= '<p class="flex-caption" data-effect-in="fadeInLeft" data-effect-out="fadeOutRight"><span>'.esc_attr($slide['title']).'</span></p>';
if(isset($slide['description']) && strlen($slide['description']) > 1)
$output .= '<p class="flex-caption" data-effect-in="fadeInLeft" data-effect-out="fadeOutRight"><span>'.esc_attr($slide['description']).'</span></p>';
$output .='</div>';
}
$output .= " </li>";
endforeach;
$output .= $this->after_elements;
$output .= " </ul>";
$output .= $this->custom_footer_html;
$output .= "</div>";
$output .= $this->after_container_html;
}
return $output;
}
Строка, которая отображает фактическое изображение, выглядит так:
$image = "<a href='".esc_url($slide['url'])."'>".$image_string."</a>";
Ссылка на указанную строку изображения простовыше этой линии.Но я понятия не имею, как реализовать Alt там.Так как он берет данные из других мест, но я понятия не имею, где это найти.
Изображение отображается онлайн как
<img src='https://praktijk-kerngezond.nl/wp-content/uploads/2014/09/foto_kinderdietist_kerngezond-e1526907903126.jpg' title='foto_kinderdietist_kerngezond' alt='' />
Как видите, alt-тег указан в коде, но пуст.Пока значение в медиатеке заполнено.
Кто-нибудь может указать мне правильное направление?Мне бы хотелось, чтобы в библиотеке мультимедиа был указан тег alt, но я также был бы рад статическому тегу all для всех слайдов.
Спасибо,
С уважением, Мирна