我在WordPress中对网站进行编码,我希望在课程名称之前显示一个书签星。
问题是代码工作正常,我可以看到它转换为图像所在的正确位置,但图像似乎找不到。
我是否需要进行任何配置才能显示此图片或我做错了什么?
代码:
$estrela = get_stylesheet_directory() . '/images/estrela.png';
$estrelaFavorito = get_stylesheet_directory() . '/images/estrela-favorito.png';
if ($isFavorito) {
$img = $estrelaFavorito;
} else {
$img = $estrela;
}
if (is_user_logged_in()) { ?>
<div class="add-remove-bookmark" onclick="addToBookmark(<?php echo $user_id ?>, 'course', <?php echo $course_id ?>)" >
<img src="<?php echo $img; ?>" alt="favoritos" width="20" height="20"/>
</div>
<?php }
结果:
<div class="add-remove-bookmark" onclick="addToBookmark(x, x, x)">
<img src="/home/xxx/www/wp-content/themes/wplms_child/images/estrela-favorito.png" alt="favoritos" width="20" height="20">
</div>
编辑:
如果我更改为下面的代码,它可以工作,但不是最佳实践:
$estrela = 'https://www.xxx.com.br/wp-content/themes/wplms_child/images/estrela.png';
$estrelaFavorito = 'https://www.xxx.com.br/wp-content/themes/wplms_child/images/estrela-favorito.png';
解决方案:
我已经为下面的代码替换了变量$estrela
和$estrelaFavorito
,现在它可以了!
$estrela = get_stylesheet_directory_uri() . '/images/estrela.png';
$estrelaFavorito = get_stylesheet_directory_uri() . '/images/estrela-favorito.png';
答案 0 :(得分:2)
替换:
//Returns an absolute server path
get_stylesheet_directory()
通过
// return theme directory url
get_stylesheet_directory_uri()
https://codex.wordpress.org/Function_Reference/get_stylesheet_directory_uri