POST查询中的DO_SHORT代码

时间:2013-09-25 作者:TechyDude

我正在查询具有特定类别的博客帖子(根据模板页面slug,并希望每篇帖子都输出一个滑块、标题和内容。我正在使用wordpress插件Anythingslider for wordpress。我正在创建与帖子slug具有相同类别的幻灯片,以便所有内容都是自动化的,并且更少的复制和粘贴-但是,当我添加do\\u短代码行时,它会复制相同的帖子(因为有很多帖子),而不是显示每个帖子!

有人有什么想法吗?

    <?php   
$args = array(
    \'post_type\' => \'post\',
    \'category_name\' => $post->post_name,
    \'showposts\' => 20, 
);

$the_query = new WP_Query( $args ); 

$page_id = get_the_ID();
$page_object = get_page( $page_id ); ?>

<div class="project-column">
    <h4><?php echo $page_object->post_content; ?></h4>
    <h1>Title</h1>

    <div id="navigation">
        <?php if ( $the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?>

    <a href="#<?php echo $post->post_name; ?>"><?php the_title(); ?></a>

        <?php endwhile; wp_reset_postdata(); ?>
        <?php endif; ?>
    </div>
</div>



    <?php if ( $the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
<div id="<?php echo $post->post_name; ?>"></div>
<div class="entry-container">

    <div class="slider-container">
        <?php $shortcode = do_shortcode(\'[anything_slides cat=\'.$post->post_name.\']\');
            echo apply_filters(\'my_new_filter\',$shortcode); ?>
    </div>

    <div class="project-column">
        <h2><?php the_title(); ?></h2>
        <?php echo the_content(); ?>            
        <hr>
    </div>
</div>

<?php endwhile; wp_reset_postdata(); ?>
<?php endif; ?> 

1 个回复
SO网友:s_ha_dum

您已设置$post_slug 在循环之外,因此值永远不会更改。您需要在循环中重置该内容,以便随着循环的进行,它将依次重置到每个帖子。

$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) { 
  while ( $the_query->have_posts() ) { 
    $the_query->the_post(); 
    $post_slug = $post->post_name;
    echo do_shortcode("[anything_slides cat=".$post_slug."]");
  }
}
但实际上根本不需要设置变量。仅使用$post->post_name.

结束

相关推荐

Get all posts without tags

我正在使用一个标签插件。有没有WordPress方法可以获取\\u帖子或查询所有没有标签的帖子?EDIT在提问时,我已经向WP Codex、search Stackexchange和Google查询了一个相关问题。我发现了一些有助于查找标记的结果,但不是NOT IN a中的运算符tax_query. 我还没有任何代码可以共享,因为我没有构建查询所需的信息$args.