在WordPress中,使用taxonomy API创建自定义分类法涉及几个步骤。以下是一个基本的指南,帮助你通过代码在WordPress中创建自定义分类法:
步骤 1: 定义钩子(Hook)
首先,你需要定义一个钩子(通常是 init
),在这个钩子中,你将调用 register_taxonomy
函数来创建自定义分类法。
步骤 2: 调用 register_taxonomy
在 init
钩子中,使用 register_taxonomy
函数来注册你的自定义分类法。以下是该函数的基本参数:
$taxonomy
:自定义分类法的标识符(通常是小写且仅包含字母、数字和下划线)。$object_type
:与此分类法关联的对象类型(例如,'post' 或 'page')。$args
:一个包含分类法选项的数组。
以下是一个示例代码,展示了如何创建一个名为“Genre”的自定义分类法,并与“book”自定义文章类型关联:
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,
'show_admin_column' => true,
'query_var' => true,
'rewrite' => array( 'slug' => 'genre' ),
);
register_taxonomy( 'genre', array( 'book' ), $args );
}
add_action( 'init', 'create_custom_taxonomy', 0 );
在这个例子中,'book'
是假设你已经注册了一个名为“book”的自定义文章类型。如果你还没有注册,你需要先注册一个自定义文章类型,然后才能将其与分类法关联。
步骤 3: 将代码添加到主题的 functions.php
文件中
将上述代码复制并粘贴到你的WordPress主题的 functions.php
文件中。如果你正在使用一个子主题,请确保将代码添加到正确的 functions.php
文件中。
步骤 4: 保存并刷新
保存 functions.php
文件,然后刷新你的WordPress管理后台。你应该能在左侧菜单中看到一个名为“Genres”的新菜单项,在那里你可以添加和管理你的自定义分类法。
确保在创建自定义分类法之前,你已经注册了与之关联的自定义文章类型。如果还没有,你需要先创建自定义文章类型。