短代码无法正常进入帖子和页面

时间:2018-04-24 15:16:04

标签: php wordpress shortcode wordpress-shortcode

我注册了一个简短的代码,但它无法正常工作。当我把短代码放入我的帖子或页面时,它不起作用。但是当我直接使用do_shortcode函数是可行的。

这是我注册到我的函数文件

function world_news_section_shortcode($atts, $content ) {
    $atts = shortcode_atts(
        array(
            'section-heading'       => '',
            'section-more'      => '',
            'section-link'      => '',

        ), $atts, 'world_news'
    );
    ob_start(); 


    $world_news = new WP_Query(array(
        'post_type'         => 'post',
        'posts_per_page'    => 3,
        'category_name'     => 'world',
    ));?>

    <div class="lattest-post">
    <h2 class="lattest-post-head"><?php echo $atts['section-heading']; ?></h2>
     <a href="<?php echo $atts['section-link']; ?>" class="lattest-more"><?php echo $atts['section-more']; ?></a>


    <?php while ($world_news->have_posts()) : $world_news->the_post(); ?>
        <div class="lattest-post-contant">
               <?php the_post_thumbnail( 'image_post' ); ?>
                <h4><?php the_title(); ?></h4>
                <?php the_excerpt(); ?>
                <a href="<?php the_permalink(); ?>">Read More</a>

            </div>

    <?php endwhile;?>   
    </div>

    <?php $world_news = ob_get_clean(); 

    return $world_news; 
}
add_shortcode( 'world_news', 'world_news_section_shortcode' );

我将这段简短的代码用于我的帖子和页面。但不工作。

[world_news section-heading="World news new" section-more="More+" section-link=""]

但是当我将这段代码直接用于我的索引页面时,它的工作非常完美。

<?php echo do_shortcode('[world_news section-heading="World news new" section-more="More+" section-link=""]'); ?>

为什么我的短代码不能用于帖子和页面?

0 个答案:

没有答案