הבעיה עם הקוד שלך הוא שכשגולש אצלך גולש בפלאפון והוא בוחר בגרסא הרגילה, אז תצטרך להוסיף לכל לינק באתר את הפרמטר mobile.
במקום זה תוכל לעשות בהתחלת הקוד משהו כזה:
PHP קוד:
if(isset($_GET['nomobile']))$_SESSION['nomobile'] = true;
header("Location: www.domain.com");
כלומר ליצור סשיין עם ערך true שאומר שהגולש רוצה לגלוש באתר הרגיל, ואז לעשות הפנייה מחדש לאתר בלי הפרמטר בכתובת (כדי למנוע כתובות כפולות לעמוד הראשי).
ואז בבדיקה אתה בודק אם קיים הסשיין, ככה זה שומר את ההגדרה, ובשביל לחזור לאתר הסלולרי תוכל לעשות הפוך, אם יש פרמטר אחר אז למחוק את הסשיין ואז להפנות מחדש לדף ואז כשהוא יגיע לבדיקה הוא יראה שאין סשיין, ואז תועבר לאתר המובייל.
הנה קוד מלא:
PHP קוד:
//If the user want the desktop version
if(isset($_GET['nomobile'])){
//Set session and refresh
$_SESSION['nomobile'] = true;
header("Location: http://m.domain.com".str_replace('nomobile','',$_SERVER['REQUEST_URI']));
}
//If the user wanted the desktop version and now he wants the mobile version
if(isset($_GET['mobile'])){
//Delete session
unset($_SESSION['nomobile']);
}
//If the session doesn't exists, and the user is using mobile device
if (!isset($_SESSION['nomobile']) && mobile_check()){
//Redirect to the mobile version
header("Location: http://m.domain.com".$_SERVER['REQUEST_URI']);
}