Перейти к содержанию

Рекомендуемые сообщения

Mobile Detect VQMOD


Mobile Detect VQMOD


vQmod для подключения мобильных шаблонов в OpenCart

Использует класс Mobile_detect v2.5.9 (https://github.com/serbanghita/Mobile-Detect)

Модуль публикует регистронезависимые константы isMobile, isTablet, isiOS, isAndroidOS, это не все, что умеет класс, но должно хватить для создания качественного мобильного шаблона.

Константы можно использовать в контроллерах:

if (isMobile) {  echo "Вы зашли с мобильного устройства!";}

А также, при входе на сайт с мобильного устройства, добавляет суффикс "_mobile" к текущему шаблону.

$this->config->get('config_template') возвращает имя текущего шаблона. Используйте этот метод для указания пути к CSS стилям в header.tpl:

<link rel="stylesheet" type="text/css" href="catalog/view/theme/<?php echo $this->config->get('config_template') ?>/stylesheet/stylesheet.css" />

Установка:

1. Скопируйте файлы из архива

2. Создайте копию своего шаблона в папке "catalog/view/theme/" с суффиксом "_mobile"

Например для шаблона "default" делаем копию в папку "default_mobile"

3. Адаптируйте Ваш _mobile шаблон для комфортного использования на мобильном устройстве


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте!

Установил мод.

Редирект происходит, но таким образом, что мобильная версия сайта отображается на основном домене, то есть в браузерной строке нет под домена > m.mysite.ru а так mysite.ru. В принципе не это главное. После установки мода на моб. версии на изображениях в карточках товара появились чёрные квадраты. Как лечить не подскажите?

Тест на iphone 5 и 6

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Отличный модуль! Это самое простое решение мобилизации. Правда с обновлением хрома до версии 41.0.2272.89 m он упорно распознается как мобильный на десктопах. opera, ffox, ie все в порядке. Я вылечил обновлением класса Mobile_Detect до новой версии. Второй вопрос как на планшетах показывать обычную (не мобильную версию)?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно ли сделать редирект не на мобильную версию сайта, а на отдельную страницу обычного сайта, если при этом переход был по рекламе?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Считывать get параметр и редирект, или просто редирект в htaccess

Ссылка должна быть типа такой site.ru/page?from=donor

Только учтите что ПС такое не любят

Изменено пользователем Otvet

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если кому нужен Mobile Detect на версии 2.3 для создания отдельной мобильной темы:

  1. Скачивает актуальную версию с офф сайта. mobiledetect.net
  2. Копируем из архива файл Mobile_Detect.php  в папку /system/library
  3. В файле system/startup.php прописываем в конце 
    // add mobile detect
    require_once(DIR_SYSTEM . 'library/Mobile_Detect.php');
    $detect = new Mobile_Detect();
    define('isMobile', $detect->isMobile(), false);
    define('isTablet', $detect->isTablet(), false);
    define('isiOS', $detect->isiOS(), false);
    define('isAndroidOS', $detect->isAndroidOS(), false);

     

  4. В файле catalog/controller/event/theme.php перед 

    if (is_file(DIR_TEMPLATE . $theme . '/template/' . $view . '.tpl')) {

    добавляем 

    if(isMobile){$theme = 'название вашей тему для мобильного';};

     

  5. Создаём копию вашей темы с названием, которое указали в п.4 в переменной $theme в папке catalog/view/theme. Должно работать.

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

Подскажите, пожалуйста, как это сделать для Opencart 2.1? Там  в контроллере каталога нет папки event и файла theme.php. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
54 минуты назад, vanamas сказал:

Подскажите, пожалуйста, как это сделать для Opencart 2.1?

в корневом index.php до // Front Controller

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 16.10.2018 в 14:36, thentru сказал:

в корневом index.php до // Front Controller

К коневом каталоге: /public_html/index.php, в этом файле у меня есть следующие строки:

// Front Controller
$controller = new Front($registry);

но я так понимаю это не то.

 

 

Изменено пользователем vanamas

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Оказывается нужно в коневом файле индекса просто добавить 

if(isMobile){
    $config->set('config_template', 'НАЗВАНИЕ МОБИЛЬНОГО ШАБЛОНА');
};

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 13.03.2017 в 15:15, rim89 сказал:

Если кому нужен Mobile Detect на версии 2.3 для создания отдельной мобильной темы:

  1. Скачивает актуальную версию с офф сайта. mobiledetect.net
  2. Копируем из архива файл Mobile_Detect.php  в папку /system/library
  3. В файле system/startup.php прописываем в конце 
    
    // add mobile detect
    require_once(DIR_SYSTEM . 'library/Mobile_Detect.php');
    $detect = new Mobile_Detect();
    define('isMobile', $detect->isMobile(), false);
    define('isTablet', $detect->isTablet(), false);
    define('isiOS', $detect->isiOS(), false);
    define('isAndroidOS', $detect->isAndroidOS(), false);

     

  4. В файле catalog/controller/event/theme.php перед 

    
    if (is_file(DIR_TEMPLATE . $theme . '/template/' . $view . '.tpl')) {

    добавляем 

    
    if(isMobile){$theme = 'название вашей тему для мобильного';};

     

  5. Создаём копию вашей темы с названием, которое указали в п.4 в переменной $theme в папке catalog/view/theme. Должно работать.

Помогите с 4 пунктом. У меня нет такой строчки. 
Есть вот какие: 
 

		if ($theme_info) {
			$template = html_entity_decode($theme_info['code'], ENT_QUOTES, 'UTF-8');
		} elseif (is_file(DIR_TEMPLATE . $theme . '/template/' . $route . '.twig')) {
			$this->config->set('template_directory', $theme . '/template/');
		} elseif (is_file(DIR_TEMPLATE . 'default/template/' . $route . '.twig')) {
			$this->config->set('template_directory', 'default/template/');
		}

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От stalker780
      vQmod для подключения мобильных шаблонов в OpenCart
      Использует класс Mobile_detect v2.5.9 (https://github.com/serbanghita/Mobile-Detect)
      Модуль публикует регистронезависимые константы isMobile, isTablet, isiOS, isAndroidOS, это не все, что умеет класс, но должно хватить для создания качественного мобильного шаблона.
      Константы можно использовать в контроллерах:
      if (isMobile) { echo "Вы зашли с мобильного устройства!";}
      А также, при входе на сайт с мобильного устройства, добавляет суффикс "_mobile" к текущему шаблону.
      $this->config->get('config_template') возвращает имя текущего шаблона. Используйте этот метод для указания пути к CSS стилям в header.tpl:

      <link rel="stylesheet" type="text/css" href="catalog/view/theme/<?php echo $this->config->get('config_template') ?>/stylesheet/stylesheet.css" />
      Установка:
      1. Скопируйте файлы из архива
      2. Создайте копию своего шаблона в папке "catalog/view/theme/" с суффиксом "_mobile"
      Например для шаблона "default" делаем копию в папку "default_mobile"
      3. Адаптируйте Ваш _mobile шаблон для комфортного использования на мобильном устройстве
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.