Obtener el texto alternativo de la imagen destacada
23 ago 2018, 16:49:03
Vistas: 20.9K
Votos: 1
Estoy tratando de obtener el texto alternativo de nuestra imagen destacada y mostrarlo en el frontend.
Actualmente mi código es
<img class="vehicle-photo" src="<?php echo the_post_thumbnail_url() ?>" alt="<?php the_post_thumbnail_caption();?>" />
Pero en el frontend, se está mostrando como
<img class="vehicle-photo" src="url de la foto aquí" alt="">
Para obtener el texto alternativo de la imagen destacada, debes usar get_post_meta() o get_post_thumbnail_id(). Aquí hay una solución:
<?php
$thumbnail_id = get_post_thumbnail_id($post->ID);
$alt_text = get_post_meta($thumbnail_id, '_wp_attachment_image_alt', true);
?>
<img class="vehicle-photo" src="<?php echo get_the_post_thumbnail_url(); ?>" alt="<?php echo esc_attr($alt_text); ?>" />
Todas las respuestas a la pregunta
2
1
El texto alternativo se almacena como metadatos de la publicación en el adjunto, y se puede recuperar con get_post_meta()
combinado con get_post_thumbnail_id()
:
<?php echo get_post_meta( get_post_thumbnail_id(), '_wp_attachment_image_alt', true ); ?>
Pero si simplemente usas la función the_post_thumbnail()
entonces no necesitas preocuparte, la etiqueta img se generará automáticamente, incluyendo el texto alternativo:
<?php the_post_thumbnail( 'post-thumbnail', ['class' => 'vehicle-photo'] ); ?>

Jacob Peattie
43.9K
23 ago 2018 17:03:42
0
Prueba el siguiente código:
<?php $image_id = get_post_thumbnail_id(get_the_ID());
$alt_text = get_post_meta($image_id , '_wp_attachment_image_alt', true);?>//Nombre de variable actualizado
<img class="vehicle-photo" src="<?php echo the_post_thumbnail_url() ?>" alt="<?php echo $alt_text ;?>" />

Bhupen
734
23 ago 2018 17:01:11
Preguntas relacionadas
2
respuestas
1
respuestas
4
respuestas