在WordPress中创建自定义分类法(taxonomy)通常是通过使用 register_taxonomy()
函数来实现的。以下是如何在WordPress插件中使用 register_taxonomy()
函数来创建自定义分类法的步骤:
-
定义钩子:首先,你需要在一个插件文件中定义一个钩子,通常使用
init
动作钩子。 -
编写
register_taxonomy()
函数:在钩子函数中,使用register_taxonomy()
来注册你的自定义分类法。
以下是具体的代码示例:
<?php
/*
Plugin Name: Custom Taxonomy Example
Description: An example plugin to demonstrate how to create a custom taxonomy in WordPress.
Version: 1.0
Author: Your Name
*/
// 注册自定义分类法的钩子
add_action('init', 'create_custom_taxonomy', 0);
// 创建自定义分类法的函数
function create_custom_taxonomy() {
// 设置标签,这里定义了自定义分类法的单数和复数名称
$labels = array(
'name' => _x('Genres', 'taxonomy general name'),
'singular_name' => _x('Genre', 'taxonomy singular name'),
'search_items' => __('Search Genres'),
'all_items' => __('All Genres'),
'parent_item' => __('Parent Genre'),
'parent_item_colon' => __('Parent Genre:'),
'edit_item' => __('Edit Genre'),
'update_item' => __('Update Genre'),
'add_new_item' => __('Add New Genre'),
'new_item_name' => __('New Genre Name'),
'menu_name' => __('Genres'),
);
// 定义自定义分类法的参数
$args = array(
'hierarchical' => true, // 是否允许层级结构,类似于分类目录
'labels' => $labels,
'show_ui' => true, // 是否在管理界面显示UI
'show_admin_column' => true, // 是否在管理界面显示列
'query_var' => true, // 是否可以创建查询变量
'rewrite' => array('slug' => 'genre'), // 伪静态URL的slug
);
// 注册自定义分类法
register_taxonomy('genre', array('post'), $args); // 'post'代表应用此分类法的文章类型,可以替换为自定义文章类型
}
?>
在上面的代码中,我们创建了一个名为“Genres”的自定义分类法,并将其应用于默认的“post”文章类型。你可以根据需要将 'post'
替换为其他自定义文章类型,例如 'book'
或 'movie'
等。
确保将此代码保存到一个PHP文件中,并将该文件放置在WordPress的 wp-content/plugins
目录下。之后,你可以在WordPress的管理界面中启用这个插件,并开始在文章编辑页面中使用你的自定义分类法。法。