Changing the register url is not working

First, make sure you have a Page set up with the slug “join”. This page must exist if you expect to point visitors there.

Second, using this filter will NOT redirect you to the /join/ page when you directly visit wp-login.php. It only replaces the URL WordPress uses when generating links/URLs to the default signup form.

It sounds like what you’re wanting to do is something more along the lines of what these plugins already do:

https://wordpress.org/plugins/wps-hide-login/

https://wordpress.org/plugins/better-wp-security/

Without the use of a plugin like the above, you’re looking at a bit more work than one tiny filter callback to accomplish what you’re wanting.

I know this doesn’t directly answer the question, but the question is very broad and is most likely the reason you’ve not received any answers until now.

I would suggest looking over this tutorial if you really want to go down this road programmatically:

pippinsplugins.com/creating-custom-front-end-registration-and-login-forms/