WordPress PHP эхо-текст

Я создал простой сайт, используя шаблон WP http://wpshower.com/themes/expositio/

Сайт является: Mathiaswarnich.dk

Все в порядке, но он не показывает альтернативные тексты, и я не могу понять настройку php. Это код для изображений:

 * The template for displaying image attachments

// Retrieve attachment metadata.
$metadata = wp_get_attachment_metadata();

get_header();
?>

<section id="primary" class="content-area image-attachment">
<div id="content" class="site-content" role="main">
        <header class="entry-header">
<?php the_title('<h1 class="entry-title">', '</h1>'); ?>
<div class="entry-meta">
<div class="full-size-link">
<a href="<?php echo wp_get_attachment_url(); ?>"><?php echo $metadata['width']; ?> &times; <?php echo $metadata['height']; ?></a>
</div>
<div class="parent-post-link">
<a href="<?php echo get_permalink($post->post_parent); ?>" rel="gallery"><?php echo get_the_title($post->post_parent); ?></a>
</div>
</div>
</header><!--
--><article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<div class="entry-content">
<div class="entry-attachment">
<div class="attachment">
<?php expositio_the_attached_image(); ?>
</div><!-- .attachment -->
<?php if (has_excerpt()) : ?>
<div class="entry-caption">
<?php the_excerpt(); ?>
</div><!-- .entry-caption -->
<?php endif; ?>
</div><!-- .entry-attachment -->
<?php
the_content();
wp_link_pages(array(
'before' => '<div class="page-links"><span class="page-links-title">'.__('Pages:', 'expositio').'</span>',
'after' => '</div>',
'link_before' => '<span>',
'link_after' => '</span>',
));
?>

1

Решение

Да, я также недавно заметил ту же проблему на моем фото-сайте, который также использует тему WP Expositio.

Обходной путь, представленный в ответе Стендера, не будет работать, потому что галерея обрабатывается пользовательской функцией.

Решение очень простое:

Шаг 1Откройте файл /inc/template-tags.php в каталоге тем.

Шаг 2: Перейти к строке 87 и проверить код здесь:

function expositio_image_tag($thumbnail_id, $size = 'post-thumbnail') {
$meta = wp_get_attachment_metadata($thumbnail_id);
if ($meta === false || $meta === '') {
return sprintf(
'<img src="%s" width="%s" height="%s" alt="" />',
wpShower::defaultImage(),
wpShower::$default_image_width,
wpShower::$default_image_height
);
}

$src = wp_get_attachment_image_src($thumbnail_id, $size);
$size_available = isset($meta['sizes'][$size]);
return sprintf(
'<img src="%s" width="%s" height="%s" alt="" />',
$src[0],
$size_available ? $meta['sizes'][$size]['width'] : $meta['width'],
$size_available ? $meta['sizes'][$size]['height'] : $meta['height']
);
}

Шаг 3Замените вышеуказанный блок кода следующим:

function expositio_image_tag($thumbnail_id, $size = 'post-thumbnail') {
$meta = wp_get_attachment_metadata($thumbnail_id);
if ($meta === false || $meta === '') {
return sprintf(
'<img src="%s" width="%s" height="%s" alt="" />',
wpShower::defaultImage(),
wpShower::$default_image_width,
wpShower::$default_image_height
);
}
$alt = get_post_meta($thumbnail_id, '_wp_attachment_image_alt', true);
$src = wp_get_attachment_image_src($thumbnail_id, $size);
$size_available = isset($meta['sizes'][$size]);
return sprintf(
'<img src="%s" width="%s" height="%s" alt="%s" />',
$src[0],
$size_available ? $meta['sizes'][$size]['width'] : $meta['width'],
$size_available ? $meta['sizes'][$size]['height'] : $meta['height'],
$alt
);
}

Шаг 4: Сохранить / загрузить отредактированный файл. Обновить сайт.

По сути, мы создаем здесь переменную $ alt, которая извлекает атрибут изображения alt и добавляет его в массив форматированных строковых значений. Наслаждаться.

1

Другие решения

если это рекомендуемое изображение — вы можете изменить

 <?php expositio_the_attached_image(); ?>

к этому

//full is the size - If you have a size from the theme, use that instead.
//don't know how your theme works, but maybe 'expositio_attachment_size'
<?php the_post_thumbnail('full'); ?>

Или даже это

<div class="attachment">
<?php expositio_the_attached_image(); ?>
</div><!-- .attachment -->

К этому

<?php if ( has_post_thumbnail() ) : ?>
<div class="attachment">
<?php the_post_thumbnail('full'); ?>
</div><!-- .attachment -->
<?php endif; ?>

Вы также можете добавить атрибуты к этой функции, если есть пропущенные классы изображений:
как это

<?php if ( has_post_thumbnail() ) : ?>
<div class="attachment">
<?php the_post_thumbnail('full', ['class' => 'img-responsive responsive--full', 'title' => 'Feature image']); ?>
</div><!-- .attachment -->
<?php endif; ?>

Удачи повеселиться!

0

По вопросам рекламы [email protected]