должно работать так:
1. Добавить библиотеку mobile_detect https://github.com/serbanghita/Mobile-Detect/blob/... которая будет определять устройство примерно так
$detect = $this->mobile_detect;
$mobile = $detect->isMobile() or $detect->isTablet();
2. если определено как мобильный клиент то: использовать определенные контроллеры, я же использую мобильные шаблоны как для сайта так и для модулей.
3. в index.php добавить
if( isset($_GET['nomobile']) ){
setcookie('nomobile','1',time()+3600*24,'/');
$_COOKIE['nomobile'] = 1;
}
define('NOMOBILE',isset($_COOKIE['nomobile']));
это на тот случай если с мобильного клиента захотят полную версию сайта
4. установить в контроллере редирект на мобильный урл при проверке NOMOBILE!=1 and ($detect->isMobile() or $detect->isTablet()
вапринципе когда 100% клон это лучше чем 90% а 10% таскается из общего(родительского магазина/базы), но лучше в том случае если клон будет развиватся самостоятельно. Вообщем направление верное.
Тоже имеем опыт работы по такой схеме когда клиент имеет доступ к исходникам своего сайта, а поддержкой и развитием занимаемся мы, дико бесит когда клиент реализует своими средствами функционал причем в обход движка на котором сайт вертится и в итоге: конфликты с системным функционалом, никакого деплоя через CI, заливка доработок на сайт по фтп путем сверки каждого файла! (не дай бог перетрем функционал клиента), обновление composer пакетов ручками по фтп, и тд. А все потому что клиент требует доступ к своему сайту и все тут.
Максим Гречушников вы наверно меня не поняли, я согласен если обновление происходит разработчиком на локальном сайте, даже и через амдинку, но результат бага не так критичен, обновили -> протестили (ручками, автотесты) -> выкатили на рабочий если все ок.
НО, на рабочем сайте обновлять из админки, рискованно, не находите?
$CI->load->library('user_agent')