我们在用WordPress做企业网站的时候,基本上都会用到自定义文章类型的,比如产品分类不会和文章分类混到一起的,否则调用的时候就比较麻烦,也不利于客户的维护。当然,市面上有很多关于 WordPress设定自定义分类的代码方式,这里我们简单一些就用Custom Post Type UI(CPT UI)插件实现。
无论我们用插件还是代码设置的自定义文章分类,我们还是需要用到就是调用。
这里有几个常用的必备的代码做一个记录。
1、调用自定义类型文章
$args = array( 'post_type' => 'products', 'posts_per_page' => 6); $loop = new WP_Query( $args ); while ( $loop->have_posts() ) : $loop->the_post(); the_title(); echo ' <div class="entry-content">'; the_content(); echo '</div> '; endwhile;
比如在这里,我们调用自定义的产品(products)类型的文章,在需要输出的页面调用。
2、首页调用加入主循环
如果我们需要在首页调用,还需要加入主循环。
add_action( 'pre_get_posts', 'add_my_post_types_to_query' ); function add_my_post_types_to_query( $query ) { if ( is_home() && $query->is_main_query() ) $query->set( 'post_type', array( 'post', 'page', 'products' ) ); return $query; }
这样在首页调用的时候就可以显示出来,否则不显示。
3、自定义文章类型分页问题
默认,我们的分页数量是根据阅读数量的统一设置的,但是我们希望自定义分类的分页数量和文章数量不同。
add_action( 'pre_get_posts', 'add_my_post_types_to_query' ); function add_my_post_types_to_query( $query ) { //首页文章显示数量 if( is_home() && $query->is_main_query()) { $query->set('posts_per_page',10);//首页每页显示8篇文章 } return $query; }
这些都是我们在自定义文章类型时候需要用到的。
评论