I have a custom post type registered called employees
. When registering this custom post type I used:
...
'rewrite' => array('slug' => 'people'),
...
Now, when I hover over a link to one of my employees I see the url as this:
www.example/people/john
So that seems correct. But I click the link, I see Chrome navigate to just www.example/john
and then that doesn't exist so it redirects to www.example
(the homepage).
How do I make it navigate to /people/john
and stop it from redirecting to the homepage?
I have a custom post type registered called employees
. When registering this custom post type I used:
...
'rewrite' => array('slug' => 'people'),
...
Now, when I hover over a link to one of my employees I see the url as this:
www.example/people/john
So that seems correct. But I click the link, I see Chrome navigate to just www.example/john
and then that doesn't exist so it redirects to www.example
(the homepage).
How do I make it navigate to /people/john
and stop it from redirecting to the homepage?
The most important args for rewrite redirects when registering new post type are:
I have pasted some code below which I have tested and it working fine for the url : www.example/people/john
$labels_employee =
array('name' => _x( 'Employees', 'Post typegeneral name', 'textdomain' ),
'singular_name' => _x( 'Employee', 'Post type singular name', 'textdomain' ),
'menu_name' => _x( 'Employees', 'Admin Menu text', 'textdomain' ),
'name_admin_bar' => _x( 'Employee', 'Add New on Toolbar', 'textdomain' ),
'add_new' => __( 'Add New', 'textdomain' ),
'add_new_item' => __( 'Add New Employee', 'textdomain' ),
'new_item' => __( 'New Employee', 'textdomain' ),
$args_employee= array(
'labels' => $labels_employee,
'public' => true,
'publicly_queryable' => true,
'show_ui' => true,
'show_in_menu' => true,
'query_var' => true,
'rewrite' => array( 'slug' => 'people' ),
'capability_type' => 'post',
'has_archive' => true,
'hierarchical' => false,
'menu_position' => null,
'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments' ),
);
register_post_type( 'employee', $args_employee );
if you have register your taxo with register_post_type('employees',$args);
have you create single-employees.php ?
and after in administration / Setting / Permalinks -> Save Changes
I had the same issue, custom taxonomy link was redirecting to index.
Ok, when register a custom taxonomy, make sure that the register_taxonomy code runs always (init hook) and not only on admin (admin_init)
add_action('init', 'woobr_register_settings');
function woobr_register_settings()
{
$args = array(
//'labels' => $labels,
//'labels' => 'Brand',
'public' => true,
'publicly_queryable' => true,
'show_ui' => true,
'show_in_menu' => true,
'query_var' => true,
'capability_type' => 'product',
'has_archive' => true,
'hierarchical' => false,
'menu_position' => null,
'supports' => array('title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments'),
);
register_taxonomy('woobrand', 'product', $args);
}