我创建了一个自定义帖子类型和自定义分类法。
我可以访问此自定义帖子类型的存档页面,显示此类型的所有条目,但我无法获取特定分类术语的url。
当我访问URL时http://example.com/chat/
我明白了archive.php
模板和所有聊天记录都会列出,但当我访问http://example.com/chat-category/category-1
(which is actually the URL shown in my wp-admin for this chat-category) 我拿到了404和archive.php
甚至没有调用模板。此外,创建模板taxonomy-chat-category.php
没用,我也得了404。
自定义分类法中是否有特定类别/术语的正确URL?
我能想到的解决方案是添加一个查询变量,如?chat-category=category-1
并在中修改查询archive.php
如果存在这个var,但我更喜欢som友好的URL解决方案。
这是我的代码:
$labels = [
\'name\' => _x( \'Categorías de chat\', \'taxonomy general name\', \'textdomain\' ),
\'singular_name\' => _x( \'Categoría de chat\', \'taxonomy singular name\', \'textdomain\' ),
\'search_items\' => __( \'Buscar categorías de chat\', \'textdomain\' ),
\'all_items\' => __( \'Todas las categorías de chat\', \'textdomain\' ),
\'parent_item\' => __( \'Categoría de chat padre\', \'textdomain\' ),
\'parent_item_colon\' => __( \'Categoría de chat padre:\', \'textdomain\' ),
\'edit_item\' => __( \'Editar categoría de chat\', \'textdomain\' ),
\'update_item\' => __( \'Actualizar categoría de chat\', \'textdomain\' ),
\'add_new_item\' => __( \'Nueva categoría de chat\', \'textdomain\' ),
\'new_item_name\' => __( \'Nuevo nombre de categoría de chat\', \'textdomain\' ),
\'menu_name\' => __( \'Categoría de chat\', \'textdomain\' ),
];
$args = [
\'hierarchical\' => true,
\'labels\' => $labels,
\'show_ui\' => true,
\'show_admin_column\' => true,
\'query_var\' => true,
\'rewrite\' => array( \'slug\' => \'chat-category\' ),
];
register_taxonomy(\'chat-category\', [\'chat\'], $args );
unset($args);
$args = [
\'labels\' => [\'name\' => __( \'chats\' ),
\'singular_name\' => __( \'chat\' )
],
\'can_export\' => true,
\'capability_type\' => \'post\',
\'custom-fields\' => true,
\'exclude_from_search\' => false,
\'has_archive\' => true,
\'hierarchical\' => true,
\'menu_icon\' => \'dashicons-video-alt2\',
\'menu_position\' => 2,
\'public\' => true,
\'publicly_queryable\' => true,
\'taxonomies\' => [\'chat-category\'],
\'rewrite\' => [\'slug\' => \'chat\'],
\'supports\' => [ \'author\', \'title\', \'editor\', \'thumbnail\', \'comments\'],
\'show_ui\' => true,
\'show_in_menu\' => true,
\'show_in_nav_menus\' => true,
\'show_in_admin_bar\' => true,
];
register_post_type( \'chat\', $args);