Non member returns true for all member checks

So this is weird. I’m trying to have 2 different menus on my site – one for subscribers and one for general visitors. To do this I thought I could query membership but here I ran into a big problem:

If I clear all of my cookies, make sure I am fully logged out etc – so basically I am a complete new user with no credentials – then run this code from functions.php:





– every single one of those checks returns bool(true)

How can that be correct?

If I now log in as a subscriber it will return true for the first 2 and false for the second 2, since I am actually on level 3 and subscription 4, which is all correct. So my question is why would those methods above basically default to true for users who are not logged in – doesn’t seem like I could do any kind of level restriction based on that behavior. What is going on please?