我在一个网站中定义了一个自定义帖子类型,如下所示:
$labels = array(
'name' => 'Clients',
'singular_name' => 'Client',
'add_new' => 'Add New',
'all_items' => 'All Items',
'add_new_item' => 'Add New',
'edit_item' => 'Edit Item',
'new_item' => 'Add New',
'view_item' => 'View Item',
'search_item' => 'Search Item',
'not_found' => 'Item Not Found',
'not_found_in_trash' => 'Item Not Found',
'parent_item_color' => 'Parent Item'
);
$args = array(
'labels' => $labels,
'public' => true,
'show_ui' => true,
'has_archive' => true,
'publicly_queryable' => true,
'query_var' => true,
'rewrite' => true,
'capability_type' => 'post',
'hierarchical' => false,
'supports' => array('title', 'editor', 'thumbnail', 'revisions'),
'taxonomies' => array('category', 'post_tag'),
'menu_position' => 20,
'exclude_from_search' => false,
'menu_icon' => 'dashicons-admin-users'
);
register_post_type('clients', $args);我的问题是,当我试图在管理面板(不是搜索表单,而是wordpress管理面板)的客户端部分搜索我的帖子时,显示的结果来自常规帖子,而不是客户自定义帖子类型。显然,我需要客户的结果。我在这里漏掉了一个论点还是什么?或者这是你应该用过滤器来做的事情?我在这里有点迷失,我不得不接受它。
发布于 2017-10-24 00:42:25
尝试添加:
'rewrite' => array('slug' => 'your-slug-name')),
添加到自定义帖子类型的$args数组中。
发布于 2017-11-08 01:39:32
好的,我将回答我自己的问题。实际上,我的帖子类型没有任何问题。这里的罪魁祸首是一个我没有!is_admin()的pre_get_posts,它也将功能传播到管理面板。找它真不是时候...不管怎样,谢谢你
https://stackoverflow.com/questions/46775929
复制相似问题