wordpress主题开发:创建自定义文章类型post-type(4)——怎样添加分类功能

正文概述 云码哥   2019-12-31   1.23K

前面,我们注册了wordpress自定义文章类型——网站后台的“商城”模块,这样,我们就可以在商城里发表产品了。但是一个商城不可能只有一个类型的产品,可能有很多种类型的产品,如:服饰类、电子类、饮食类……等等。这时,我们就要对它们进行分类。所以,在注册好了wordpress自定义文章类型后,我们还要添加分类功能。

添加分类功能我们就需要使用到register_taxonomy()函数 ,使用方法跟注册 Post Type() 函数类似,只不过多了一个参数用来指定对应的 Post Type :

register_taxonomy( $taxonomy, $object_type, $args );

参数解说:

$taxonomy 字符串型,必需,分类法的名称,用英文哦
$object_type 数组或字符串,必需,分类法所对应的文章类型
$args–可选,配置参数

参数使用跟 register_post_type()函数类似,这里就不多说。下面就是添加分类代码:

  1. function my_taxonomies_shop() {
  2. $labels = array(
  3. ‘name’ => _x( ‘商城分类’, ‘taxonomy 名称’ ),
  4. ‘singular_name’ => _x( ‘商城分类’, ‘taxonomy 单数名称’ ),
  5. ‘search_items’ => __( ‘搜索商城分类’ ),
  6. ‘all_items’ => __( ‘所有商城分类’ ),
  7. ‘parent_item’ => __( ‘该商城分类的上级分类’ ),
  8. ‘parent_item_colon’ => __( ‘该商城分类的上级分类:’ ),
  9. ‘edit_item’ => __( ‘编辑商城分类’ ),
  10. ‘update_item’ => __( ‘更新商城分类’ ),
  11. ‘add_new_item’ => __( ‘添加新的商城分类’ ),
  12. ‘new_item_name’ => __( ‘新商城分类’ ),
  13. ‘menu_name’ => __( ‘商城分类’ ),
  14. );
  15. $args = array(
  16. ‘labels’ => $labels,
  17. ‘hierarchical’ => true,
  18. );
  19. register_taxonomy( ‘shop’, ‘book’, $args );
  20. }
  21. add_action( ‘init’, ‘my_taxonomies_shop’, 0 );

这样,wordpress后台的商城模块菜单里就会多出一个“商城分类”菜单,如下图:

wordpress主题开发:创建自定义文章类型post-type(4)——怎样添加分类功能

通过上面的步骤,我们添加了后台的自定义文章类型的分类,但是在前台还不能正常显示。这时,我们要对自定义文章类型添加模板。根据“WordPress 的模板调用规则”,只需创建 category-[post_type].php 和 single-[post_type].php 就可以实现该 Post Type 的列表自定义和文章自定义。这时,当用户访问 Post Type文章或分类时,WordPress 会优先调用这些模板来渲染。

我们前面注册的wordpress自定义文章分类名为 book ,我们先复制一个主题中的single.php和category.php文件,然后将复制的文件名改成single-book.php和category-book.php就可以了。

本站大部分资源收集于网络以及网友投稿,本不保证资源的完整性以及安全性,请下载后自行测试。
本站资源仅供下载者学习技术,版权归资源原作者所有,请在下载后24小时之内自觉删除。
本站资源仅供下载者学习IT编程开发技术,请遵守国家法律法规,严禁用于非法用途。
若作商业用途,请购买正版,由于未及时购买正版发生的侵权行为,与本站无关。
如您是版权方,本站源码有侵犯到您的权益,请邮件联系331752841@qq.com 删除,我们将及时处理!

发表评论