WordPress自定义文章归档页PHP调用特色图片显示异常求助
解决WordPress自定义文章归档页特色图显示Unknown的问题
嘿,我来帮你排查下这个问题~先看你代码里的几个关键点:
1. 最直接的问题:忘记输出字段内容
你写的<img src="<?php get_post_field('artist_feature_image'); ?>" ...>里,get_post_field()这个函数是返回内容但不会自动打印到页面上的,必须加上echo才能把图片URL输出到src属性里:
<img src="<?php echo get_post_field('artist_feature_image'); ?>" alt="<?php the_title(); ?>">
2. 检查自定义字段键名是否匹配
如果加了echo还是显示Unknown,那大概率是你自定义字段的键名和代码里写的artist_feature_image对不上。毕竟很多自定义字段插件(比如ACF)里,字段的标签和键名是分开的——你得去插件的字段组编辑页,找到这个特色图字段的「字段键」(不是显示的标签),确保代码里的名字和它完全一致,大小写、下划线都不能错。
3. 用插件专属函数更靠谱(如果用的是ACF)
如果你是用Advanced Custom Fields(ACF)设置的字段,那更推荐用ACF自带的get_field()函数,它会自动识别当前文章的上下文,比get_post_field()适配性更好:
<img src="<?php echo get_field('artist_feature_image'); ?>" alt="<?php the_title(); ?>">
4. 额外加个容错处理(可选)
为了避免字段为空时显示破图,你可以加个判断,给个默认图:
<?php // 先获取图片URL $artist_img = get_field('artist_feature_image'); // 如果为空就用默认图,替换成你的默认图地址 $img_src = $artist_img ? $artist_img : '/path/to/your/default-image.jpg'; ?> <img src="<?php echo $img_src; ?>" alt="<?php the_title(); ?>">
对了,顺便提一句,你代码里的$artist_website变量其实没定义,虽然你说其他功能正常,但这里应该改成get_field('artist_website')或者get_post_field('artist_website')并输出,不然链接可能会出问题:
<a href="<?php echo get_field('artist_website') ?: get_permalink(); ?>">
这样调整后,应该就能正常显示特色图啦~
内容的提问来源于stack exchange,提问作者Jaimee Page
相关产品推荐
相关产品推荐

