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

前面,我们注册了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 的模板调用规则”,只需创建 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就可以了。

原文链接:https://vuesite.cn/1926.html,转载请注明出处。
0
显示验证码
没有账号?注册  忘记密码?