The session_is_registered is deprecated, just use isset to check:
if(!isset($_SESSION['admin'])){
And for header already sent notice, you should make sure there is no output before session_start() and any head() function.
Your case is most caused by the deprecated notice if your display_errors config is on.
1
solved php session function says deprecated