Подключение мобильной версии шаблона Битрикс сайта, с автопереключением

Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Подключение мобильной версии шаблона Битрикс сайта, с автопереключением
 
Подключение мобильной версии шаблона Битрикс сайта, с автопереключением

Адаптивная верстка шагает по www но я не ее сторонник. Предпочитаю, что бы сайт не грузил чертову кучу скриптов и стилей. При загрузке адаптивного шаблона за ним тянется очень много файлов, которые перегружают мобильный трафик, что полностью нивелирует преимущества "легкого" отображения сайта. Решил создать мобильную версию шаблона для битрикс с автоматическим переключением на нужный шаблон.
 
Большое спасибо!
Но почему вместо прямого определения в коде UA устройств не использовать скрипт с http://mobiledetect.net?
Там и устройств гораздо больше, можно разделять телефон-планшет-компьютер, браузер, код упростится, например

$detect = new Mobile_Detect;
$deviceType = ($detect->isMobile() ? ($detect->isTablet() ? 'tablet' : 'phone') : 'computer');
if (($deviceType == 'phone') &&($_SERVER["SERVER_NAME"] == "camouf.ru" || $_SERVER["SERVER_NAME"] == "www.camouf.ru" ;) &&
empty($VISITOR_ID)) {
$APPLICATION->set_cookie("MOBILE_VISITOR_MB", "MOBILE", time()+60*60);
LocalRedirect("http://camouf.ru/?type=pda" ;) ;
exit();
}

Как-то так.
 
Цитата
Александр пишет:
Большое спасибо!
Но почему вместо прямого определения в коде UA устройств не использовать скрипт с http://mobiledetect.net ?
Там и устройств гораздо больше, можно разделять телефон-планшет-компьютер, браузер, код упростится, например

$detect = new Mobile_Detect;
$deviceType = ($detect->isMobile() ? ($detect->isTablet() ? 'tablet' : 'phone') : 'computer');
if (($deviceType == 'phone') &&($_SERVER["SERVER_NAME"] == "camouf.ru" || $_SERVER["SERVER_NAME"] == "www.camouf.ru" &&
empty($VISITOR_ID)) {
$APPLICATION->set_cookie("MOBILE_VISITOR_MB", "MOBILE", time()+60*60);
LocalRedirect("http://camouf.ru/?type=pda" ;
exit();
}

Как-то так.
В общем-то да, можно и так
 
Здравствуйте!
Подскажите пожалуйста как подключить отсюда http://mobiledetect.net для определения устройств к битрикс, я не спец.
Заранее спасибо,
С Уважением, Алексей
 
Цитата
Алексей пишет:
Здравствуйте!
Подскажите пожалуйста как подключить отсюда http://mobiledetect.net для определения устройств к битрикс, я не спец.
Заранее спасибо,
С Уважением, Алексей
Инструкция там же на сайте имеется.
 
Добрый день. Прошу уточнить как настраивать переключение на мобильный шаблон, если на сайте применен не один, а несколько шаблонов (для разных файлов и папок).
 
Цитата
Guest пишет:
Добрый день. Прошу уточнить как настраивать переключение на мобильный шаблон, если на сайте применен не один, а несколько шаблонов (для разных файлов и папок).
Интересный вопрос. Не задавался таким, но попробуйте сделать условие перехода на мобильную версию самым последним в списке шаблонов
 
Цитата
Михаил Базаров пишет:
Цитата
Guest пишет:
Добрый день. Прошу уточнить как настраивать переключение на мобильный шаблон, если на сайте применен не один, а несколько шаблонов (для разных файлов и папок).
Интересный вопрос. Не задавался таким, но попробуйте сделать условие перехода на мобильную версию самым последним в списке шаблонов
Сделала копии всех шаблонов. В основных в header.php указанный Вами код
<?
$iphone = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone" ;) ;
$android = strpos($_SERVER['HTTP_USER_AGENT'],"Android" ;) ;
$palmpre = strpos($_SERVER['HTTP_USER_AGENT'],"webOS" ;) ;
$berry = strpos($_SERVER['HTTP_USER_AGENT'],"BlackBerry" ;) ;
$ipod = strpos($_SERVER['HTTP_USER_AGENT'],"iPod" ;) ;
$mobile = strpos($_SERVER['HTTP_USER_AGENT'],"Mobile" ;) ;
$symb = strpos($_SERVER['HTTP_USER_AGENT'],"Symbian" ;) ;
$operam = strpos($_SERVER['HTTP_USER_AGENT'],"Opera M" ;) ;
$htc = strpos($_SERVER['HTTP_USER_AGENT'],"HTC_" ;) ;
$fennec = strpos($_SERVER['HTTP_USER_AGENT'],"Fennec/" ;) ;
$winphone = strpos($_SERVER['HTTP_USER_AGENT'],"WindowsPhone" ;) ;
$wp7 = strpos($_SERVER['HTTP_USER_AGENT'],"WP7" ;) ;
$wp8 = strpos($_SERVER['HTTP_USER_AGENT'],"WP8" ;) ;
$VISITOR_ID = $APPLICATION->get_cookie("MOBILE_VISITOR_MB" ;) ;
if (($ipad || $iphone || $android || $palmpre || $ipod || $berry || $mobile || $symb || $operam || $htc || $fennec || $winphone || $wp7 || $wp 8) &&
($_SERVER["SERVER_NAME"] == "192.168.56.3" || $_SERVER["SERVER_NAME"] == "www.192.168.56.3" ;) &&
empty($VISITOR_ID) ) {
$APPLICATION->set_cookie("MOBILE_VISITOR_MB", "MOBILE", time()+60*60);
LocalRedirect("192.168.56.3/?type=pda" ;) ;
exit();
}
?>
В настройках сайта если прописать условие "Выражение php" - siteType=='pda' для мобильного шаблона (если его основной шаблон без условия), то переключение на этот мобильный шаблон происходит.
Для основных шаблонов, для которых существуют условия "Для папки или файла" переход на мобильные шаблоны не происходит.
Если прописать условие "Выражение php" - siteType=='pda' для мобильно версии самого последнего в списке шаблона, то на мобильную версию переход не происходит ни на одном шаблоне.
 
Добрый день.
На Apple Safari открывается мобильная версия (в другиз браузерах нормально). Необходимо чтоб открывался обычный шаблон. В заголовке передается USER_AGENT - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_4) AppleWebKit/600.7.12 (KHTML, like Gecko) Version/8.0.7 Safari/600.7.12. Прошу уточнить, какое из указанных в header HTTP_USER_AGENT может на это влиять?
 
Цитата
Guest пишет:
Добрый день.
На Apple Safari открывается мобильная версия (в другиз браузерах нормально). Необходимо чтоб открывался обычный шаблон. В заголовке передается USER_AGENT - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_4) AppleWebKit/600.7.12 (KHTML, like Gecko) Version/8.0.7 Safari/600.7.12. Прошу уточнить, какое из указанных в header HTTP_USER_AGENT может на это влиять?
Проверил у себя на Safari под 10,10,4 - все нормально, открывается полный сайт
Киньте ссылку на ваш сайт прямо сюда или на почту mihail@camouf.ru
 
Сделал все как было описано выше. Все заработало. Но через несколько дней вхожу с мобильного устройства и обнаруживаю шаблон десктопа.
Может подскажите в чем дело
 
Здравствуйте, Михаил!
У меня одного случилось так или просто никто не проверял:
Была адаптивная верстка и проверка google показывала, что сайт адаптирован для мобильных устройств.
После подключения второго шаблона (описанным выше способом) проверка выдает ошибку:
Цитата
Произошла ошибка при получении или анализе страницы.Dismiss
Как это решить?
 
Цитата
Здравствуйте, Михаил!
У меня одного случилось так или просто никто не проверял:
Была адаптивная верстка и проверка google показывала, что сайт адаптирован для мобильных устройств.
После подключения второго шаблона (описанным выше способом) проверка выдает ошибку:
Цитата
Произошла ошибка при получении или анализе страницы.Dismiss
Как это решить?
А зачем вы при имении адаптивной версии, подключали мобильную, (просто интересно)?
А так, все что показано в видео работает прямо сейчас на этом сайте, проверку google проходит нормально
 
Цитата
Михаил Базаров пишет:
Здравствуйте, Михаил!
У меня одного случилось так или просто никто не проверял:
Была адаптивная верстка и проверка google показывала, что сайт адаптирован для мобильных устройств.
После подключения второго шаблона (описанным выше способом) проверка выдает ошибку:
Цитата
Произошла ошибка при получении или анализе страницы.Dismiss
Как это решить?
Цитата
А зачем вы при имении адаптивной версии, подключали мобильную, (просто интересно)?
А так, все что показано в видео работает прямо сейчас на этом сайте, проверку google проходит нормально
Подключаю по тем же соображениям, что и вы. Для того, что бы убрать лишний мусор из верстки (слайдеры и т.д.).
Кстати, проблема решилась путем включения редиректа www на "безWWW".
А может сама собой решилась...
 
А для чего вы используете куки? Если все равно при каждой загрузке страницы проверяете тип устройства с которого зашел юзер.
 
Цитата
Dina пишет:
А для чего вы используете куки? Если все равно при каждой загрузке страницы проверяете тип устройства с которого зашел юзер.
Если юзер предпочел перейти с мобильной версии на полную, что бы ему не приходилось на каждой странице переходить на полную
 
Переадресовывается, а потом кликаешь любой пункт меню и переходишь в раздел уже в полной версии. Что не так?
 
Учитывая верхний вопрос всё сделал проще, init.php не нужен вообще, в header добавляем следующий код:


<?
$mobile_ver = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"Android" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"webOS" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"BlackBerry" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"iPod" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"Mobile" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"Symbian" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"Opera M" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"HTC_" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"Fennec/" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"WindowsPhone" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"WP7" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"WP8" ;) ;
if ($mobile_ver >0) {
LocalRedirect('?sitetype=mobile');
};
?>

В настройках сайта выбираем не "выражение PHP", а "Параметр URL", куда заносим соответственно sitetype в первое окошко и mobile во второе после знака равенства.

И всё работает!

Подскажите, чем мой код плох и зачем там у вас такой огород из кода нагроможден?
 
Цитата
Денис пишет:
Учитывая верхний вопрос всё сделал проще, init.php не нужен вообще, в header добавляем следующий код:


<?
$mobile_ver = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"Android" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"webOS" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"BlackBerry" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"iPod" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"Mobile" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"Symbian" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"Opera M" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"HTC_" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"Fennec/" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"WindowsPhone" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"WP7" ;) +
strpos($_SERVER['HTTP_USER_AGENT'],"WP8" ;) ;
if ($mobile_ver >0) {
LocalRedirect('?sitetype=mobile');
};
?>

В настройках сайта выбираем не "выражение PHP", а "Параметр URL", куда заносим соответственно sitetype в первое окошко и mobile во второе после знака равенства.

И всё работает!

Подскажите, чем мой код плох и зачем там у вас такой огород из кода нагроможден?
А если человек захочет с мобильной версии перейти на основную?
 
Здравствуйте, Михаил!
Использовал этот метод у себя и еще на сайте клиента.
На моем сайте все работает на ура, а у клиента первый раз закидывает на основную версию, а после обновления страницы или переходе по сайту подключается мобильный шаблон. Пробовал с разных устройств и браузеров - везде одно и то же.

Поможете разобраться?
Спасибо!
 
Добрый день Михаил, во-первых спасибо за полезные уроки!, так держать!, у меня вопрос: все сделал как прописано, все редиректится, но редиректится на мобильную версию и когда с компьютера заходишь, а при нажатии перейти на полную версию сайта переходит, но при переходе на другую станицу на основном сайте опять переадресовывает на мобильную версию, буду признателен если натолкнете куда копать? заранее признателен
 
Михаил спасибо за код, но на текущий момент при композитном режиме получается бред, постоянная перезапись в композит. Как написать этот же модуль без использования User Agent или что на что подменить, чтобы композит работал и переход??
 
Михаил, спасибо за урок.
Уточняющий вопрос, если есть у вас есть время.
Правильно ли я понял, что для мобильных устройств нужно создать не только новый шаблон "Главной страницы" а новый сайт?
То есть к примеру -Был один сайт, в терминах битрикс S1
Создаём копию сайта и пуcкай называется S2
И вот переход в случае захода с мобильного устройства должен идти именно на главную страницу S2

Спасибо
 
Цитата
Максим пишет:
Михаил, спасибо за урок.
Уточняющий вопрос, если есть у вас есть время.
Правильно ли я понял, что для мобильных устройств нужно создать не только новый шаблон "Главной страницы" а новый сайт?
То есть к примеру -Был один сайт, в терминах битрикс S1
Создаём копию сайта и пуcкай называется S2
И вот переход в случае захода с мобильного устройства должен идти именно на главную страницу S2

Спасибо
Или все новые страницы для мобильной версии нужно создать в рамках первого сайта?
 
Цитата
Guest пишет:
Цитата
Максим пишет:
Михаил, спасибо за урок.
Уточняющий вопрос, если есть у вас есть время.
Правильно ли я понял, что для мобильных устройств нужно создать не только новый шаблон "Главной страницы" а новый сайт?
То есть к примеру -Был один сайт, в терминах битрикс S1
Создаём копию сайта и пуcкай называется S2
И вот переход в случае захода с мобильного устройства должен идти именно на главную страницу S2

Спасибо
Или все новые страницы для мобильной версии нужно создать в рамках первого сайта?
Можно, конечно и второй сайт сделать- именно как отдельный на поддомене m.site.ru
Но в этом способе именно шаблон, сам сайт тот же самый. Страницы созданные на сайте сразу попадают в обе версии. Просто переключается шаблон, в рамках того же сайта
 
Михайл,
Спасибо за ответы.
Обращаюсь с вопросом - Есть ли у вас время проделать переключение на разные шаблоны на сайте ?
Сколько потребуется времени и какая стоимость?


Исходные данные
1. Привожу пример упрощенной картинки, до уровня которой пришлось упрощать сайт, чтобы google признал его оптимизированным
2. Сайт был сверстан давно и не переделывался.
3. Первоначально файл стилей находился в корне и я его перенес в шаблон

Какие у меня возникли затруднения
4.После правки копии шаблона для PDA по каким то причинам сканер безопасности сообщал при сканировании, что внешнее сканирование невозможно. То есть я как-то вредил сайту.
5. На главной странице добавлена новостная лента, удаляя которую из копии шаблона (для PDA) я соответственно удалял её и с главной страницы.
6. Проделав указанные вами в видео действия, получалось так, что мобильные устройства сайт не видели. То есть шаблон PDA для них не включался.
 
Добрый день. Решение подключения мобильной версии при наличии на сайте нескольких шаблонов так и не нашли?
 
Цитата
Иван пишет:
Добрый день. Решение подключения мобильной версии при наличии на сайте нескольких шаблонов так и не нашли?
Пока с такой задачкой не пересекался, как подвернется допишу заметку
 
Здравствуйте Михаил! Хочу выразить благодарность за доступный и весьма информативный урок уложенный в эту статью и видео. Сделал у себя на сайте, все работает как часы, без каких либо сложностей. Возник один вопрос, который возможно будет интересен и другим читателям этой страницы:

У меня в htpacces прописано два редирекста: с http на https и с www на без www. В связи с этим Гугд Пэйдж Спид Инсайт ругается на наличие двух лишних редиректов на странице при перебросе на ?type=pda. Подскажите пожалуйста как тут лучше поступить?

Вот как я подправил последний фрагмент кода из шаблона(полагаю, что в нем собака зарыта):
.......
($_SERVER["SERVER_NAME"] == "мойсайт.рф" ;) &&
empty($VISITOR_ID)) {
$APPLICATION->set_cookie("MOBILE_VISITOR_MB", "MOBILE", time()+60*60);
LocalRedirect("?type=mobile" ;) ;
exit();
.....


При указании в LocalRedirect() полного названия сайта с http страница загружается только со второго раза. А при указании в пуникод выскакивает предупреждение о редиректе на другой ресурс, потому свел код к "?type=mobile".
 
подскажите а как сделать переадресацию для разных сайтов без потери ссылки ?
site.ru/catalog/ на site.ru/m/catalog/
 
Добрый день, Михаил!

Спасибо Вам за огромный труд!
 
Спасибо за инструкцию, но каким способом можно дать возможность пользователю переключиться на обычную версию сайта? Куда должна вести ссылка?
 
Цитата
Вилен Давыдов пишет:
Спасибо за инструкцию, но каким способом можно дать возможность пользователю переключиться на обычную версию сайта? Куда должна вести ссылка?
Вроде бы в видео озвучивал
/?type=original
 
Цитата
Михаил Базаров пишет:
Цитата
Вилен Давыдов пишет:
Спасибо за инструкцию, но каким способом можно дать возможность пользователю переключиться на обычную версию сайта? Куда должна вести ссылка?
Вроде бы в видео озвучивал
/?type=original
Да, спасибо, пропустил. Но проблема другая. Такая система переадресации прошла на гугле, но не прошла на яндексе, вот что указано при проверке.
"Многие страницы с различным контентом перенаправляют на одну и ту же страницу мобильной версии сайта. Примеры целей редиректа:" и перечисляются страницы. Есть ли решение и прошел ли ваш сайт проверку в яндексе на адаптивность?
 
Цитата
Вилен Давыдов написал:
"Многие страницы с различным контентом перенаправляют на одну и ту же страницу мобильной версии сайта. Примеры целей редиректа:" и перечисляются страницы. Есть ли решение и прошел ли ваш сайт проверку в яндексе на адаптивность?
Вот такая штука у меня есть еще https://camouf.ru/blog-note/2329/
Яндекс не сразу, но итоге переварил.

А по поводу прохождения, да все без проблем
 
Спасибо, то есть это нужно доделать к тому, что уже сделано по этой статье в файле init и код определения операционной системы в основном шаблоне, я правильно понимаю?
 
Михаил, спасибо за ваш материал.

Поменяйте в материале строку переадресации на главную, если зашли с мобильного устройства:
Код
LocalRedirect($APPLICATION->GetCurPage() . "?type=pda"); 
 
Мы же не хотим, если человек перешел на интересующую его страницу, а потом его перекинуло на главную:)
 
Цитата
Михаил Базаров пишет:
Цитата
Вилен Давыдов написал:
"Многие страницы с различным контентом перенаправляют на одну и ту же страницу мобильной версии сайта. Примеры целей редиректа:" и перечисляются страницы. Есть ли решение и прошел ли ваш сайт проверку в яндексе на адаптивность?
Вот такая штука у меня есть еще https://camouf.ru/blog-note/2329/
Яндекс не сразу, но итоге переварил.

А по поводу прохождения, да все без проблем
сайт все равно не прошел проверку яндекса пишет

"Многие страницы с различным контентом перенаправляют на одну и ту же страницу мобильной версии сайта."
 
Михаил, спасибо большое за Ваши уроки, очень полезно.
По этому материалу все сделала, все получилось. Но у меня вопрос.
Как выяснилось, поменять шаблон недостаточно. Например, файл index.php тоже будет совершенно другой.
Создаю в корне сайта папку /m для мобильной версии. Подскажите, пожалуйста, как и где сделать перенаправление на эту папку, если пользователь заходит с мобильного устройства?
 
Цитата
Ольга Стафиевская написал:
Михаил, спасибо большое за Ваши уроки, очень полезно.
По этому материалу все сделала, все получилось. Но у меня вопрос.
Как выяснилось, поменять шаблон недостаточно. Например, файл index.php тоже будет совершенно другой.
Создаю в корне сайта папку /m для мобильной версии. Подскажите, пожалуйста, как и где сделать перенаправление на эту папку, если пользователь заходит с мобильного устройства?
С редиректом на поддиректорию сайта все немного иначе, описанный способ не очень подходит. Посмотрите как это реализовано в типовом магазине, там есть пример.
 
У меня заработало следующим образом
$VISITOR_ID = $APPLICATION->get_cookie("MOBILE_VISITOR_MB");
if ($ipad || $iphone || $android || $palmpre || $ipod || $berry || $mobile || $symb || $operam || $htc || $fennec || $winphone || $wp7 || $wp) {
$APPLICATION->set_cookie("MOBILE_VISITOR_MB", "MOBILE", time()+60*60);
header("Location: sitepath/?type=pda");
break;
}
Заметьте, я использую break; Чтобы не было цикличного перехода.
Тип условие в параметрах Bitrix: Параметр в URL: type = pda
 
Здравствуйте, нужно разделения на 6 видов шаблона:
ПК, Планшеты ipad, палншеты андроид, iphone, андроид смартфоны и версия для слабовидящих. Как реализовать на битрикс?
 
Цитата
Андрей Колчанов написал:
Здравствуйте, нужно разделения на 6 видов шаблона:
ПК, Планшеты ipad, палншеты андроид, iphone, андроид смартфоны и версия для слабовидящих. Как реализовать на битрикс?
Наверное проще сделать адаптивную версию, вы столько шаблонов утомитесь поддерживать однажды
+ одну для слабовидящих по инструкции выше
 
Цитата
Михаил Базаров пишет:
Цитата
Андрей Колчанов написал:
Здравствуйте, нужно разделения на 6 видов шаблона:
ПК, Планшеты ipad, палншеты андроид, iphone, андроид смартфоны и версия для слабовидящих. Как реализовать на битрикс?
Наверное проще сделать адаптивную версию, вы столько шаблонов утомитесь поддерживать однажды
+ одну для слабовидящих по инструкции выше
Может 6 и многовато...

В общем-то, на текущем проекте ПК и планшетная версия почти одно и то же по функциям но по визуалу отличается, а в мобильной явно требуется отключение кучи скриптов, как по визуалу так и по функционалу.

Поэтому считаю, что нужно делить хотя бы так: ПК, планшеты, смартфоны, для слабовидящих.
Собственно я так полагаю, что самая большая сложность, это как отделить андроид планшеты и андроид смартфоны.

Сможете помочь?
 
Цитата
Андрей Колчанов написал:
Цитата
Михаил Базаров пишет:
Цитата
Андрей Колчанов написал:
Здравствуйте, нужно разделения на 6 видов шаблона:
ПК, Планшеты ipad, палншеты андроид, iphone, андроид смартфоны и версия для слабовидящих. Как реализовать на битрикс?
Наверное проще сделать адаптивную версию, вы столько шаблонов утомитесь поддерживать однажды
+ одну для слабовидящих по инструкции выше
Может 6 и многовато...

В общем-то, на текущем проекте ПК и планшетная версия почти одно и то же по функциям но по визуалу отличается, а в мобильной явно требуется отключение кучи скриптов, как по визуалу так и по функционалу.

Поэтому считаю, что нужно делить хотя бы так: ПК, планшеты, смартфоны, для слабовидящих.
Собственно я так полагаю, что самая большая сложность, это как отделить андроид планшеты и андроид смартфоны.

Сможете помочь?

Думаю только через http://mobiledetect.net городить кучу запросов для каждого устройства. Умнее сходу не придумаю.
Читают тему

© 2011—2016 Частный вебмастер: ИП Базаров, ОГРНИП: 315784700173692. Работает на 1С-Битрикс.
Копирование материалов запрещено: "ГК РФ, часть 4, раздел VII: Права на результаты интеллектуальной деятельности".

Информация размещенная на сайте, не является публичной офертой. Политика конфеденциальности
x
Как к Вам обращаться? *
Ваша электронная почта: *
Доп. материалы (логотип, тех. задание):
 
Обзор
Текст сообщения: