WordPress 可以很方便的自定义文章类型,而且可以做到无限极分类,多分类多级别自定义筛选,提供了大量丰富的函数和开发文档供我们自由的定制,这篇文章将给大家介绍下如何查询自定义分类类型文章。
创建自定义文章类型,我们要用到 register_post_type 函数,可自定义很多参数,具体使用方法参见官方文档,这里做一个简单的示例。
- register_post_type( 'reform',
- array(
- 'hierarchical' => true,
- 'labels' => array(
- 'name' => __( '维保改造' ),
- 'singular_name' => __( '维保改造' )
- ),
- 'public' => true,
- 'has_archive' => false,
- 'supports' => array('title', 'editor', 'thumbnail', 'custom-fields'),
- 'menu_icon' =>"dashicons-admin-tools"
- )
- );
给自定义文章添加分类,文章类型添加完成一个,我们还可以给她添加一个或者多个分类,像有些文章的公共属性等。
- register_taxonomy(
- 'elevator-brand',
- 'reform',
- array(
- 'label' => '电梯品牌',
- 'rewrite' => array( 'slug' => 'elevator-brand' ),
- 'hierarchical' => true
- )
- );
注意上的第二个参数 reform,就是我们添加的自定义文章类型,如果你写成 post ,那么就是给现在的默认文档类型再添加一种分类类型,在使用上非常方便。
如果要给文章添加多个分类类型,那么只需要复制上面的代码,将函数的第一个参数、label 以及 rewrite 参数修改一下就可以了。
添加完成一个记得一定要在后台设置-固定链接保存一下,不然分类的链接将是 404。
查询自定义文章类型列表,接下来我们使用 new WP_Query() 查询自定义文章类型列表:
- $args = array(
- 'post_type' => 'reform',
- //获取的文章类型
- 'tax_query' => array(
- array(
- 'taxonomy' => 'product_cat',
- //这里是自定义的分类类型
- 'field' => 'id',
- //获取自定义分类的方式是通过ID获取
- //也可以通过别名slug的方式获取
- 'terms' => 82,
- //自定义的分类的ID,
- //如果上一行你选择的是通过slug(别名方式获取)
- //则这里填写的是自定义分类的别名
- ),
- ),
- 'numberposts'=>6 //获取的文章数量
- );
- $theQuery = new WP_Query( $args );
section
循环遍历输出文章
- <?php if ( $the_query->have_posts() ) : ?>
- <?php while ( $the_query->have_posts() ) :
- $the_query->the_post(); ?>
- <!--我自定义的文章格式-->
- <!--值得一提的是这里循环会自动生成一个全局变量$post
- 注意是$post而不是$posts
- 通过这个变量你可以获取很多你想要的东西比如下面我获取当前文章的ID-->
- <div class="people" id="<?php echo 'people'.$post->ID;?>">
- <ul id="people_info">
- <li><?php the_title()?></li>
- </ul>
- </div> <!--文章循环结束-->
- <?php endwhile; ?>
- <?php else : ?>
- <?php endif; ?>
- <?php wp_reset_postdata();?>
- <!--如果需要多次自定义查询最后把这句加上
- 只查询一次也加上.养成一个好的习惯。-->
如果您不涉及查询自定义分类的话可以采用以下的方法:
- <?php
- //courses为类型、8为篇数,rand为随机
- $loop = new WP_Query( array(
- 'post_type' => 'reform',
- 'orderby'=>'rand',
- 'posts_per_page' => 8
- ) );
- while ( $loop->have_posts() ) :
- $loop->the_post(); ?>
- //这里中间部分正常输出传统标题函数、链接函数等我就不写了
- <?php endwhile;
- wp_reset_query();?>
文章標題:WordPress 查询自定义文章类型的文章和分类筛选
文章連結:https://www.wuyanshuo.cn/1297.html
更新時間:2022年9月11日
1、本站所有資源均不添加推廣檔案或浮水印,壓縮包內若有廣告檔案和浮水印請勿輕易相信。
2、本站資源均為兩層壓縮,第一層7z(尾碼若為wys,請自行修改為7z)有解壓密碼; 第二層zip或cbz,無解壓密碼,可直接使用漫畫類軟件程式查看; 詳情可參攷解壓教程。
3、本站大部分內容均收集於網絡! 若內容侵犯到您的權益,請發送郵件至:admin#wysacg.top我們將第一時間處理! 資源所需價格並非資源售賣價格,是收集、整理、編輯詳情以及本站運營的適當補貼,並且本站不提供任何免費技術支援。 所有資源僅限於參攷和學習,版權歸原作者所有!