Menu Custom link – using relative link when WP is in a subdirectory

I tend to develop sites in a subdirectory, and I tend to use a fair amount of custom links in my menu ( the “Custom Links” option in the WP admin Appearance > Menus section) to display archive pages.

I am constantly annoyed at the fact that a relative link entered there will not take the subdirectory into account. For example, I have WP is installed in domain.com/dev.

I put a custom link “/events” in the menu, but it returns domain.com/events, which is 404, instead of properly returning domain.com/dev/events.

How can I change this behavior?

Solutions Collecting From Web of "Menu Custom link – using relative link when WP is in a subdirectory"

/events is not a relative link, it’s an absolute link. The beginning slash forces it to the root of the domain. Of course, a relative link like events will be relative to the current page, so if you’re on a page like this domain.com/dev/something/ it’ll be domain.com/dev/something/events.

If you’re developing a WP site that will eventually live at the root of the domain, I suggest you rethink your development process. Build the site on localhost or a subdomain, so that when you move you don’t have to repoint links, just migrate, fix the DB, and go.