Skip to content
Advertisement

Make the blog page a child of another page and rewrite the archive url

I am trying to make my WordPress blog page a child of another page and have the url structure reflect that. However, I also have other custom post type archive pages set up that should not be interfered with.

Right now, my blog page is a child of Page Name and the permalink in the backend shows www.sitename.com/page-name/blog/. However, visiting this page gives me a 404 error even after refreshing the permalink settings.

If I update the post permalink settings to be /page-name/blog/%postname%/, the blog url works, but then my other custom post type archive pages, such as www.sitename.com/resources/, end in a 404.

How can I achieve a nested blog page while not disrupting my custom post type archives?

Advertisement

Answer

Nevermind, I was able to solve this by updating my $args in register_post_type. I set 'with_front' to false in my rewrite parameter for my affected custom post type and just updated my blog post permalink structure to /page-name/blog/%postname%/

'rewrite' => array('slug' => 'knowledge-base', 'with_front' => false)
User contributions licensed under: CC BY-SA
9 People found this is helpful
Advertisement