Post only showing on homepage when Logged in – direct URL still working

This sounds like an issue where the homepage is served out of a page cache, rather than generating live. Usually, when you are logged in, you are bypassing the cache and seeing a live generated page. If you have a caching plugin activated, try clearing the page cache and load the homepage again.

If that works, you’ll want to check your settings to ensure that the homepage cache is cleared whenever a post is published.