You could probably do some of your own scripting to have it done post init... I don't think you'd want to do it in standard rc.conf. you could write your own script under /etc/rc.d/ or have it triggered on log-in, perhaps as a daemon, that could scan for network location by ID, or whatever method you planned on using, ifconfig up/wpa_supplicant, etc, and just have it done post login, rather than at startup, but keep in mind, you'll have to trigger other network dependent rc scripts post network config (for this example). Best way I could think of to do it.... if you read the man pages for rc, you could also possibly find a better option as far as prioritizing, etc.
Put enough work into it, you could maybe contrib to ports tree. Have you looked at PC-BSD's (or TrueOS, is it now?) solution for this and/or are you only looking to do network automation? If you're looking for more than just dhcp/ifconfig you'll be doing some deep scripting.