微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 如何删除wp短代码中的标签?

我正在尝试创建一个显示最新帖子的短代码.我使用以下代码作为短代码

 function my_recent_posts_shortcode( $atts ) {
extract( shortcode_atts( array( 
        'limit' => 5 
        ), $atts,'recent-posts' ) );

$q = new WP_Query( 
 array('posts_per_page'=>'.$limit.','post_type'=>'post')
);


$list = '';
while($q->have_posts()):$q->the_post();
    $list .= '<div class="post">
        <img class="img_border img_border_b img_fl" src="'.get_template_directory_uri().'/images/blog/01.jpg" alt="Post Image 1" />
        <div class="post_content">
            <h2><a href="'.get_permalink().'">'.get_the_title().'</a></h2>

            '.the_content().'
            <a class="more" href="fullpost.html">More</a>
        </div>
        <div class="clear"></div>
    </div>';

endwhile;

wp_reset_query();

return $list;
}

add_shortcode( 'recent-posts', 'my_recent_posts_shortcode' );

之后,我创建了一个页面,然后我选择了页面模板?这是我的page.PHP模板循环

<div id="templatemo_content" class="left">
        <?PHP if(have_posts()) : ?>
            <?PHP while (have_posts()) : the_post(); ?>
                <?PHP the_content();?>
        <?PHP endwhile; ?>    
            <?PHP endif; ?> 




    </div>

以下是我的短代码

  [recent-posts limit="3"]

但是当我看到结果时,它会显示一个“预”标签.

请告诉我解决方案.

解决方法:

the_content()正在输出您的内容,请将其替换为apply_filters(‘the_content’,get_the_content())
在你的my_recent_posts_shortcode函数中,更换后它将工作!!

问候

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐