我开发了一个插件来创建一个公文包自定义帖子类型,并用一个短代码显示最后3篇发布的帖子的预览。
一切都很好,一切都很正常,唯一的问题是,当我想用短代码显示帖子的缩略图作为帖子预览的背景图像时,它不会出现,图像url显示为这样,没有斜杠:
<div class="col-sm-12 col-md-4 mb-5 portfolio-panel" id="porfolio-home-display" style="background-image: url(" https:="" sitedomain.com="" wp-content="" uploads="" 2021="" 10="" image-name.jpg");"=""><h5><a href="link">Link name</a></h5><a href="link">See this work</a></div>
在这里,我将代码的一部分放在相对于短代码的位置:
function wpb_rand_portfolio() {
$args = array(
'post_type' => 'portfolio',
'orderby' => 'rand',
'posts_per_page' => 3,
);
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) {
$string .= '<div class="container portfolio-panel-homecontainer">';
$string .= '<div class="row portfolio-panel-homebox squares">';
while ( $the_query->have_posts() ) {
$the_query->the_post();
$string .= '<div class="col-sm-12 col-md-4 mb-5 portfolio-panel" id="porfolio-home-display" style="background-image: url("'. get_the_post_thumbnail_url() .'");">';
$string .= '<h5><a href="'. get_permalink() .'">'. get_the_title() .'</a></h5>';
$string .= '<a href="'. get_permalink() .'">'. sprintf( __( 'See this work', 'theme-name' )) .'</a>';
$string .= '</div>';
}
$string .= '</div>';
$string .= '</div>';
$string .= '</div>';
// Restore original Post Data
wp_reset_postdata();
} else {
$string .= '<div class="container portfolio-panel-homecontainer">';
$string .= '<div class="row portfolio-panel-homebox squares">';
$string .= '<div class="col-12">';
$string .= 'no posts found';
$string .= '</div>';
$string .= '</div>';
$string .= '</div>';
}
return $string;
}
add_shortcode('wpb-random-portfolio','wpb_rand_portfolio');
add_filter('widget_text', 'do_shortcode');
我在网站上搜索过,但没有找到任何解决方案。你能帮助我吗?
谢谢大家