How to give anonymous user access in a menu hook?
You can definitely set 'access callback' =&gt; TRUE on the menu item and that will bypass any access checks, you don't need to implement a function that just returns TRUE (it would be redundant). Don't forget you need to clear the caches before changes in hook_menu will get picked up though.

Rather than just blindly returning TRUE though it's probably a better idea to assign a permission to the anonymous user role, or piggyback off of one that's already there (access content is the usual suspect for this if it fits in with your workflow). You can do that by using 'access arguments' =&gt; array('access content') instead of 'access callback' (don't use both).

Also you've missed out the title in your example, according to the docs that property is required. I doubt that's actually causing the problem though.

Just on another note, you mention that you're visiting '/search' to test this page - the path you've defined will be at '/site_search' instead.