Uborevich
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 19
|
 |
« : 23.03.2007, 09:34:19 » |
|
Вопрос вот в чем, как и можно ли вообще сделать так чтобы при заходе на сайт Joomla определяля браузер и под него генерировала контент? Т.е. поясню, я допустим очень активно серфю с КПК и меня как и многих напрягает стоимость GPRS трафика, так вот на своем сайте я бы хотел чтобы джумла генерила странички под КПК. Это возможно? ????
|
|
|
|
|
Записан
|
|
|
|
|
Mitrich
|
 |
« Ответ #1 : 23.03.2007, 12:15:33 » |
|
Тоже задавался таким вопросом Пока решения не нашел Вопрос в том что браузеров гора как под Win/Mac/*NIX так и под PDA Можно отдавать разный CSS , но вес траницы при этом останется тем же Надо бы глянуть как PDA браузер определяется. Если на Windows Mobile он говорит что он IE то вообще нет идей. С Palm'овским браузером думаю проблем не будет. Может сделать страницу входа на сайт которая через ,скажем ,3 секунды будет перенаправлять ..... Короче если есть мысли стучи в асю Меня эта тема тоже занимает
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #2 : 23.03.2007, 12:32:57 » |
|
Можно сделать субдомен для сайта типа lite.site.ru, который будет alias'ом основному сайту. А в начале /index.php проверять имя хоста и, если это lite.site.ru, то выставлять упрощенный шаблон и изменять $mosConfig_live_site.
|
|
|
|
|
Записан
|
|
|
|
|
Mitrich
|
 |
« Ответ #3 : 23.03.2007, 15:50:32 » |
|
Не вариант Интересно распознавать устройство до начала загрузки
|
|
|
|
|
Записан
|
|
|
|
Uborevich
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 19
|
 |
« Ответ #4 : 25.03.2007, 10:44:14 » |
|
Ребят, спасибо что хоть ответили но я так сказать пользователь хоть и с 15 летним опытом на компах... так что с программированием у меня туго... а идеи без воплощения - пусты.
Я думал что ктонить уже находил решения под джумлу.
Буду ща тупо перебирать CMS-ки и искать чтонить под ПДАшку. Если что найду не сочтите за рекламу - дам тут ссылку.
|
|
|
|
|
Записан
|
|
|
|
Uborevich
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 19
|
 |
« Ответ #5 : 25.03.2007, 11:10:06 » |
|
Вот. хотелось бы получить что то такоеже на выходе... хттп://pda.uw.ru/
Этого то можно добиться от джумлы?
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #6 : 25.03.2007, 11:21:12 » |
|
Ну, это примерно то, что я описал. Только lite.site.ru замени на pda.site.ru.
|
|
|
|
|
Записан
|
|
|
|
Uborevich
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 19
|
 |
« Ответ #7 : 25.03.2007, 11:44:20 » |
|
хттп://www.compdoc.ru/internet/java/faq2/16.shtml - это может как нить помочь? Правда это для явы.
|
|
|
|
|
Записан
|
|
|
|
Uborevich
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 19
|
 |
« Ответ #8 : 25.03.2007, 12:01:32 » |
|
Ну, это примерно то, что я описал. Только lite.site.ru замени на pda.site.ru.
Как это можно реализовать? есть мануал какойнибудь?
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #9 : 25.03.2007, 16:23:26 » |
|
Можно сделать субдомен для сайта типа lite.site.ru, который будет alias'ом основному сайту.
Для этого нужно в httpd.conf (файл конфигурации Apache) для Вашего хоста прописать строку ServerAlias "site.ru" "lite.site.ru" (после наверняка существующей записи ServerAlias "site.ru" "www.site.ru"). Скорее всего, Вам нужно будет лишь попросить хостера о создании алиаса, а не вносить изменения вручную. А в начале /index.php проверять имя хоста и, если это lite.site.ru, то выставлять упрощенный шаблон и изменять $mosConfig_live_site.
У меня появилась другая идея — сделать это через мамбот. pda.xml <?xml version="1.0" encoding="iso-8859-1"?> <mosinstall version="1.0.0" type="mambot" group="system"> <name>PDA template</name> <version>0.1</version> <author>Denis Ryabov</author> <creationDate>25 Mar 2007</creationDate> <copyright>Denis Ryabov</copyright> <license>GNU/GPL</license> <authorEmail>dryabov@ya.ru</authorEmail> <authorUrl>http://sanrsu.org.ru/</authorUrl> <description>Changes template to PDA on pda.site.com host.</description> <files> <filename mambot="pda">pda.php</filename> </files> <params /> </mosinstall> pda.php <?php defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' ); $_MAMBOTS->registerFunction( 'onStart', 'botPDA' ); function botPDA() { global $mosConfig_live_site; if($_SERVER['HTTP_HOST']=='pda.site.ru') { $mosConfig_live_site='http://'.$_SERVER['HTTP_HOST']; $_COOKIE['jos_user_template']='pda'; } } ?> Плюс, нужно создать и установить "минималистический" шаблон PDA типа <?php defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' ); ?><html> <head> <?php mosShowHead(); ?> <meta http-equiv="Content-Type" content="text/html; <?php echo _ISO; ?>" /> <link href="<?php echo $mosConfig_live_site;?>/templates/pda/css/template_css.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="pathway"><?php mosPathWay(); ?></div> <?php mosMainBody(); mosLoadModules('pda',-2); ?> </body> </html> PS. Это всё — «теория», проверяйте сами на свой страх и риск.
|
|
|
|
« Последнее редактирование: 02.04.2007, 08:53:21 от Physicist »
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #10 : 02.04.2007, 08:40:35 » |
|
Решил «реанимировать» тему. Интересно распознавать устройство до начала загрузки
На http://thebogles.com/blog/projects/mobile-optimized-forums-template/ это предлагают делать таким кодом: <?php $user_agent = $_SERVER['HTTP_USER_AGENT']; $is_mobile = preg_match('/(up-browser)|(blackberry)|(windows ce)|symbian|palm|nokia/i', $user_agent); if ($is_mobile) { //... } ?> Еще полезными могут оказать ссылки: List of user agents for mobile phonesUser agentВ проекте CodeIgniter содержится примерно такой код: <?php $mobiles = array( 'mobileexplorer' => 'Mobile Explorer', 'openwave' => 'Open Wave', 'opera mini' => 'Opera Mini', 'operamini' => 'Opera Mini', 'elaine' => 'Palm', 'palmsource' => 'Palm', 'digital paths' => 'Palm', 'avantgo' => 'Avantgo', 'xiino' => 'Xiino', 'palmscape' => 'Palmscape', 'nokia' => 'Nokia', 'ericsson' => 'Ericsson', 'blackBerry' => 'BlackBerry', 'motorola' => 'Motorola' ); $agent = ''; if(isset($_SERVER['HTTP_USER_AGENT'])) $agent = trim($_SERVER['HTTP_USER_AGENT']); $is_mobile = FALSE; foreach ($mobiles as $key => $val) { if (FALSE !== (strpos(strtolower($agent), $key))) { $is_mobile = TRUE; break; } } ?> Таким образом, можно заменить в pda.php проверку хоста pda.site.ru на проверку браузера.
|
|
|
|
« Последнее редактирование: 02.04.2007, 08:46:05 от Physicist »
|
Записан
|
|
|
|
Uborevich
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 19
|
 |
« Ответ #11 : 06.04.2007, 19:54:13 » |
|
Идея интересная, сейчас начал прорабатывать ее.
Завтра посмотрю, где то встречал компонент и мамботы под него, так вот, этот компонент очень корректно отображал кто каким браузером пользуется... думаю имеет смысл подсмотреть методу определения.
|
|
|
|
|
Записан
|
|
|
|
Lu
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 20
|
 |
« Ответ #12 : 16.05.2007, 15:18:18 » |
|
Ну так появились какие-нибудь конкретные решения по этому поводу?
|
|
|
|
|
Записан
|
|
|
|
|
|
Lu
Захожу иногда

Репутация: +0/-0
Offline
Сообщений: 20
|
 |
« Ответ #14 : 30.05.2007, 16:14:18 » |
|
Здорово! Спасибо. Попробую.
|
|
|
|
|
Записан
|
|
|
|
Sedoy
Support Team
   
Репутация: +77/-10
Offline
Пол: 
Сообщений: 1084
Интересно,в какой кодировке пишут врачи?
|
 |
« Ответ #15 : 30.05.2007, 18:50:00 » |
|
Physicist, сенкс но если не затруднит выложи здесь и желательно на родном языке с подробным описанием "как" для всех, вплоть до уровня "плинтуса" 
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #16 : 30.05.2007, 19:06:35 » |
|
Хорошо. Попробую.
Сначала устанавливаем PDA-шаблон (см. вложение), который будет использоваться для вывода информации в упрощенном (без особых излишеств) виде. Шаблон содержит позиции для модулей header и footer. Если эти позиции уже имеются в основном шаблоне сайта - подредактируйте шаблон, чтобы пересечений не было (или наоборот, чтобы, например, меню выводилось в одну и туже позицию в обоих шаблонах). Настраиваем в админке, какие модули будут выводиться в этих позициях.
Затем устанавливаем и активируем PDA-мамбот (см. вложение), который будет выставлять установленный ранее PDA-шаблон если на сайт заходят с карманного компьютера (или мобильного телефона — но! pda-версия и wap-версия сайта это разные вещи, так что не все телефоны отобразят содержимое сайта).
|
|
|
|
« Последнее редактирование: 08.06.2007, 19:27:15 от Physicist »
|
Записан
|
|
|
|
Sedoy
Support Team
   
Репутация: +77/-10
Offline
Пол: 
Сообщений: 1084
Интересно,в какой кодировке пишут врачи?
|
 |
« Ответ #17 : 30.05.2007, 19:26:54 » |
|
сенкс продолжаем "как": 1 - как это проверить можно локально (если можно для отладки) и нужен ли обязательно КПК (скажем через дата кабель подключен к компу) или можно и так посмотреть или обязательно нужно на хосте? 2 - лично я так и не понял, достаточно ли выложенное тобой установить или все таки нужно некий спец-клон сайта делать?
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #18 : 30.05.2007, 19:46:16 » |
|
Я локально просто выставил шаблон pda «по-умолчанию» и настраивал отображение в Opera в режиме Shift+F11 (эмуляция КПК). Реально же проверял только окончательный вариант, временно поставив «чистую» Joomla на сервер.
Достаточно установить выложенное и настроить отображение модулей в соответствующих позициях (по-умолчанию header и footer — я, например, в header установил копию модуля Поиск, а в footer копию mainmenu). Никакой «спец-клон» сайта не нужен.
|
|
|
|
« Последнее редактирование: 30.05.2007, 19:49:43 от Physicist »
|
Записан
|
|
|
|
Sedoy
Support Team
   
Репутация: +77/-10
Offline
Пол: 
Сообщений: 1084
Интересно,в какой кодировке пишут врачи?
|
 |
« Ответ #19 : 30.05.2007, 19:53:07 » |
|
ок сенкс
|
|
|
|
|
Записан
|
|
|
|
Timon_Crazy
Завсегдатай
   
Репутация: +31/-4
Offline
Пол: 
Сообщений: 565
Лицензнаци
|
 |
« Ответ #20 : 31.05.2007, 05:56:54 » |
|
также можно проверить: 1) выставив юзер агент в браузере 2) поставив эмулятор PDA (есть и Палм (ladoshki.com) и PocetPC (microsoft.com) 3) если PDA подключен шнуром к компу то при заходе на сайт будет определяться он.
проверка идет по версии браузера?
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #21 : 31.05.2007, 06:20:07 » |
|
Проверка идет по (если одно из условий выполняется, то зашли с КПК): 1) HTTP_ACCEPT = text/vnd.wap.wml 2) HTTP_ACCEPT = application/vnd.wap.xhtml+xml 3) HTTP_X_WAP_PROFILE = 4) HTTP_PROFILE = 5) X-OperaMini-Features = 6) UA-pixels = 7) HTTP_USER_AGENT = содержит в виде подстроки одно из значений массива названий браузеров
|
|
|
|
|
Записан
|
|
|
|
Timon_Crazy
Завсегдатай
   
Репутация: +31/-4
Offline
Пол: 
Сообщений: 565
Лицензнаци
|
 |
« Ответ #22 : 31.05.2007, 06:48:49 » |
|
можно ли менять значение массива названий браузера?
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #23 : 31.05.2007, 06:58:09 » |
|
Через настройки мамбота — нет. А дописать отсутствующее значение в массив всегда можно просто отредактировав файл pdabot.php
|
|
|
|
|
Записан
|
|
|
|
Timon_Crazy
Завсегдатай
   
Репутация: +31/-4
Offline
Пол: 
Сообщений: 565
Лицензнаци
|
 |
« Ответ #24 : 31.05.2007, 09:13:27 » |
|
планируется ли настройка с панели управления?
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #25 : 31.05.2007, 09:21:58 » |
|
Возможно. Только я планировал настраивать не список user agent'ов, а названия позиций модулей, используемых в pda-шаблоне (всё-таки позиции header и footer могут быть и в основном шаблоне сайта).
|
|
|
|
|
Записан
|
|
|
|
Timon_Crazy
Завсегдатай
   
Репутация: +31/-4
Offline
Пол: 
Сообщений: 565
Лицензнаци
|
 |
« Ответ #26 : 31.05.2007, 09:36:07 » |
|
ну ето тоже актуально
правда вопрос: компоненты выводиться будут?
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #27 : 31.05.2007, 09:45:36 » |
|
правда вопрос: компоненты выводиться будут?
Так вроде ж mosMainBody из шаблона никто не убирал 
|
|
|
|
|
Записан
|
|
|
|
Timon_Crazy
Завсегдатай
   
Репутация: +31/-4
Offline
Пол: 
Сообщений: 565
Лицензнаци
|
 |
« Ответ #28 : 31.05.2007, 09:47:12 » |
|
следовательно: еслив них (компонентах) юзается ява, аякс - на пда то не посмотришь? тем более через wap
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1154
Рябов Денис
|
 |
« Ответ #29 : 31.05.2007, 10:13:15 » |
|
Естественно. А что есть возможность это исправить???
|
|
|
|
|
Записан
|
|
|
|
|