我试图在自定义页面模板中输出使用快捷码创建的自定义循环。下面是我用来生成短代码的代码:
function archive_sc( $atts ) {
// Attributes
extract( shortcode_atts(
array(
\'cat\' => \'\',
\'number\' => 10,
), $atts )
);
$args = array(
\'post_type\' => \'smr-product\',
\'smr-product-category\' => $cat, // \'taxonomy\' => \'term\',
\'posts_per_page\' => $number,
);
// The Query
$the_query = null;
$the_query = new WP_Query( $args );
// The Loop
if ( $the_query->have_posts() ) {
while ( $the_query->have_posts() ) {
smr_product_the_frontend_item();
}
} else {
// no posts found
}
/* Restore original Post Data */
wp_reset_postdata();
}
add_shortcode( \'pcats\', \'archive_sc\' );
下面是自定义页面模板中的代码:
<?php
/*
Template Name: Product Archive
*/
get_header();
?>
<section id="content" class="review-container">
<?php while ( have_posts() ) : the_post(); ?>
<div id="list-items-review">
<?php the_content(); ?>
</div>
<?php endwhile; ?>
</section>
<?php get_footer(); ?>
The
smr_product_the_frontend_item()
只是每个产品的HTML的函数。
然而,它不知从何处返回了无限多的帖子(尽管该博客有大约20个产品)。我做错了什么?