我正在开发一个相当复杂的作品集 WP 主题,我似乎无法弄清楚为内容设置层次结构的合乎逻辑且最有效的方法。内容需要很深的层次结构,我需要面包屑和菜单才能工作。自定义帖子类型(CPT)用于“客户工作”,理想情况下,它是默认页面结构中工作>>客户>>客户(CPT)的子页面。但我无法为 CPT 定义父页面。我正在相应地重写蛞蝓,但这似乎并不能维持父/子关系。
目前,我的结构如下:
工作 > 客户 >> 客户 >>> 客户工作(CPT) >>> 单个工作项目
我的问题是: 1. 有没有更好的方法来构建它?2. 我应该不使用 CPT 还是如何将 CPT 添加到更多的层次结构中,以便它们与各自的父级相关联?
这是我的 CPT 注册码:
class cpt_client_work {
function cpt_client_work() {
add_action('init',array($this,'create_post_type'));
}
function create_post_type() {
$labels = array(
'name' => 'Client Work',
'singular_name' => 'Client',
'add_new' => 'New Client Work',
'all_items' => 'All Client Work',
'add_new_item' => 'New Client Work',
'edit_item' => 'Edit Client Work',
'new_item' => 'New Client Work',
'view_item' => 'View Client Work',
'search_items' => 'Search Client Work',
'not_found' => 'No Client Work found',
'not_found_in_trash' => 'No Client Work found in trash',
'parent_item_colon' => 'Parent Client:',
'parent' => 'Client',
'menu_name' => 'Client Work'
);
$args = array(
'labels' => $labels,
'description' => "Client Work",
'public' => true,
'exclude_from_search' => false,
'publicly_queryable' => true,
'show_ui' => true,
'show_in_nav_menus' => true,
'show_in_menu' => true,
'show_in_admin_bar' => true,
'menu_position' => 20,
'menu_icon' => get_bloginfo('template_directory') . '/_/images/admin-icon.png',
'capability_type' => 'post',
'hierarchical' => true,
'rewrite' => array('slug' => 'work/client'),
'supports' => array('page-attributes','title','editor','thumbnail','excerpt','custom-fields','revisions','author'),
'has_archive' => true,
'query_var' => true,
'can_export' => true
);
register_post_type('cpt_client_work',$args);
}
}