在WordPress中,如果你想获取特色图片的URL而不是包含完整的img
标签,可以使用get_the_post_thumbnail_url
函数。我们在制作WordPress主题时候想要给wordpress特色图片,这也是为了更加的美观,但是我们直接使用wordpress特色图片引用代码(<?php the_post_thumbnail(); ?>
)的时候却发现,出现下面的情况。
<img width="700" height="350" src="******/wp-content/uploads/2017/12/20171205-7.png" class=" wp-post-image" alt="***" title="***" srcset="****/wp-content/uploads/2017/12/20171205-7.png 700w, *****/wp-content/uploads/2017/12/20171205-7-300x150.png 300w" sizes="(max-width: 700px) 100vw, 700px">
直接使用wordpress特色图片引用代码(<?php the_post_thumbnail(); ?>
)的时候,这会导致图片样式我无法自定义,我想在<img>里面添加类无法实现。
方法一:来源ChatGPT
以下是一个简单的例子,演示如何调用特色图片的URL并去除img
标签的其他样式:
<?php
// 获取当前文章的特色图片URL
$thumbnail_url = get_the_post_thumbnail_url(get_the_ID(), 'full');
// 如果有特色图片,则显示
if ($thumbnail_url) {
echo '<img src="' . esc_url($thumbnail_url) . '" alt="' . esc_attr(get_the_title()) . '">';
}
?>
上述代码中,get_the_post_thumbnail_url
函数用于获取特色图片的URL。第一个参数是文章ID,使用get_the_ID()
获取当前文章的ID。第二个参数是图像大小,可以是WordPress中注册的尺寸,如 'full'
、'large'
等。
请注意,这段代码不包含img
标签的其他样式,只是简单地输出了特色图片的URL。你可以将这段代码插入到你的主题文件中,比如在文章列表页或文章详情页中,根据需要进行调整。
方法二:来源网络
<!--特色图像引用:完整尺寸-->
<?php $full_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'full'); echo $full_image_url[0]; ?>
<!--特色图像引用:小尺寸-->
<?php $thumbnail_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'thumbnail'); echo $thumbnail_image_url[0]; ?>
<!--特色图像引用:中尺寸-->
<?php $medium_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'medium'); echo $medium_image_url[0]; ?>
<!--特色图像引用:大尺寸-->
<?php $large_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'large'); echo $large_image_url[0]; ?>
<!--特色图像引用:自定义尺寸-->
<?php $array_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), array(200,200)); echo $array_image_url[0]; ?>
实现前提
前提是在function.pnp中要配置,让创建文章的时候出现特色图片上传:
/**
* 启用对文章缩略图和特色图片的支持。
*/
add_theme_support( 'post-thumbnails' );
/**
然后在需要引用图片的地方,把代码写入就可以,这个是直接使用wordpress完整尺寸的,如果想要系统截取的其他尺寸的图片,请看上面的代码就可,然后把img的src里面的代码换一下就可以了。
<?php if ( has_post_thumbnail() ) { ?>
<a href="<?php the_permalink(); ?>" target="_blank" title="<?php the_title(); ?>">
//特色图片
<img alt="<?php the_title(); ?>" src="<?php $full_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'full'); echo $full_image_url[0]; ?>"/>
</a>
<?php } else {?>
<a href="<?php the_permalink(); ?>" target="_blank" title="<?php the_title(); ?>">
//暂无图片
<img title="<?php the_title(); ?>" src="<?php bloginfo('template_url'); ?>/images/morentu.png" />
</a>
<?php } ?>
完!