Шаблон «m.»

А мы сделали максимально облегчённый скин для мобильных телефонов.
Вырезан весь «лишний» функционал.
Доступны просмотр списка топиков по категориям, просмотр топика с комментариями и страница последних комментариев





Демо

доступен в каталоге или тут

upd 1.1
— поменялся доктайп на мобильный
— добавилась страница всех комментариев, типа прямого эфира
— правки в css

81 комментарий

avatar
Клево!!! Респект автору.
avatar
На первый взгляд просто отлично, но надо покопаться как отмодерируют. Сразу что хотелось бы добавить — это max-width: 100%; для картинок внутри топика, чтобы не распирали.
avatar
да, этот момент упустил. хотя по-моему браузеры в мобильниках сами подгоняют большие картинки под размеры экрана, по крайней мере мой виндовс мобайл мобильник именно так и делал всё время пока я отлаживал
avatar
Однозначно респект.
avatar
И сразу вопрос в лоб. Только на четвёртую версию или на третью тоже встанет?
avatar
только на четвёртую, у третей нет конфигов скина, вообще нет конфига блоков и скиновых языковых файлов, и оно не будет работать отдельным пакетом, придётся вносить кучу лишних не прикольных совсем правок
avatar
Уверен, многие пользователи третьей версии тоже захотят воспользоваться этой возможностью.

А если ставить на поддомен? То есть доступ по обычному адресу на полную версию, а на поддомене мобильную? Тогда не нужно будет автоматически определять браузер, конфигурировать скин и так далее. В таком виде для третьей версии проще сделать?
avatar
в любом случае сейчас это просто скин, который надо ставить на отдельный поддомен =)

для 0.3 конечно тоже можно сделать, но там не получится просто «папка со скином», придётся вносить дополнительные изменения в конфиг, в файлы движка и вообще возиться с настройками. Если он действительно кому то нужен для 0.3.1, то возможно я выберу время сделать его и написать инструкции, но это точно будет не ближайшую неделю
avatar
действительно кому то нужен для 0.3.1
+1
avatar
бажное вырезание функционала — m.ls.cgvault.ru/comments/
  • ort
  • 0
avatar
fxd, сейчас перезалью
avatar
перезалил
avatar
Кстати, список комментов (http://m.ls.cgvault.ru/comments/) — более чем необходима для мобильной версии, до прямого эфира на ajax'е это была самая популярная страница
  • ort
  • 0
avatar
хм… =) окей, сегодня сделаю
avatar
Никогда не понимал, зачем объявлять XHTML 1.0 Strict, если его спецификация всё равно не соблюдается.

Судя по тому, что js отсутствует, шаблон предполагается использовать не только на смартфонах, но и на обычных телефонах. В связи с этим на отдельных устройствах можно ожидать проблемы, поскольку не все из встраиваемых браузеров корректно работают XHTML.

Для беспроблемной работы мобильных устройств следует объявлять следущий доктайп и, разумеется, строго следовать соответствующей спецификации:
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.2//EN" «www.openmobilealliance.org/tech/DTD/xhtml-mobile12.dtd»>


Кроме того, нужно задекларировать, что это документ XML и там же указать его кодировку. Разработка для мобильных устройств — достаточно специфическое дело, типичный для ЛС попустительский подход к вёрстке тут не годится в силу большого разнообразия клиентских устройств и невозможности протестировать продукт на каждом из них.
avatar
полностью согласен, для мобильников я даже делал сайты, так что в курсе проблем… честно говоря про доктайп я тупо забыл
avatar
На главной вижу неупорядоченный список с отключенными маркерами. Напоминаю, что маркеры отключаются далеко не везде
avatar
В файле стиле вижу shorthand-запись свойств селекторов. В вёрстке для мобильных устройств её использовать нельзя.
avatar
h1, h2, h3, h4, h5, h6 {
	font-size:1em;
	font-weight:normal;
	margin:0;
	padding:0;
}


Напоминаю, что популярный на моблиных платформах браузер Openwave не поддерживает изменение кегля для заголовков
avatar
ох. а есть где вообще про спецификации почитать? я походу совсем мало знаю про эти штуки. ну и даже если там что то будет выглядеть неодинаково, главное что бы оставалось удобочитаемо.

И спасибо за найденные ошибки =)
avatar
Не за что, всегда готов помочь советом. Отталкиваться можно отсюда: www.w3.org/TR/css-mobile/ Кроме того, у крупных вендоров есть гадлайны по разработке контента, как например у нокии.

Там довольно много нюансов, лучше не забивай себе голову — на это можно угробить несколько недель. Я могу следить за работой над шаблоном и помогать рекомендациями в аську или инбокс. Коли в своё время уже убил на это кучу времени, почему бы не сэкономить твоё ;-)
avatar
будет очень круто, спасибо =)
avatar
У вас есть свн? Как следить, куда смотреть? =)
avatar
на демо сайте обновления происходят напрямую, но это неудобно будет совсем… надо сделать свн
avatar
Если будут проблемы с поднятием репозитория и трекера, могу предложить свои.
avatar
спасибо, если не получится, обязательно обращусь
avatar

.mn a.active {color:#333333; font-weight:bold;}

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

avatar
Простите за глупый вопрос.
Этот скин только для мобильных, или с его помощью можно сделать мобильную версию Большого сайта?
avatar
я даже не знаю как правильно ответить на ваш вопрос
m.ls.cgvault.ru это мобильная версия skins.cgvault.ru/
в моём случае установлены две версии движка, подключенные к одной базе.

на большом сайте можно дописать htaccess, что бы он, если зашли с мобильного браузера, редиректил на мобильный сайт.

так же можно написать плагин, который будет подменять значение скина в конфиге, если обнаружит что на сайт заходят с мобильного.
avatar
в моём случае установлены две версии движка, подключенные к одной базе.
Интересно… Поставить второй на поддомене, и к той же базе подключить?
Или есть тут какие-то подводные камни?..
Автоопределение не очень интересует… просто поддомена мне хватит…
avatar
единственный встреченный мной подводный камень, это абсолютные пути, при заливании картинок, но в случае с этим мобильным скином, который не позволяет вообще писать его можно не учитывать
avatar
Телефоны, которые могут залить картинку через input=file можно пересчитать по пальцам. На крайний случай можно подстраховаться, используя один и тот же каталог для загрузки изображений. Например, тут может помочь символическая ссылка или какой-нибудь другой нехитрый приём.
avatar
А внутренние ссылки, которые юзера оставляют… Короче, сейчас попробую…
avatar
Поставил на поддомен… ссылки всё равно смотрят на основной…
avatar
ну абсолютные пути в базе никто не отменяет же, можно пробежаться по базе и убрать sitename.ru/ из всех ссылок, тогда они будут относительными от корня
avatar
убрать
http://sitema.ru

что бы осталось
/link/link.html
первый слэш обязательно нужен
avatar
Все отлично работает на поддомене…
Вот только, когда на основном сайте появляется комментарий, на мобильной версии его нет… На сколько я понял, не обновляется кэш…
avatar
так же можно написать плагин, который будет подменять значение скина в конфиге, если обнаружит что на сайт заходят с мобильного
Вот с таким плагином будет вообще красота!
*Слежу за развитием событий (разработки)*
avatar
обновил до версии 1.1
  • Vilz
  • 0
avatar
Огромное спасибо за шаблон, работает все просто шикарно (пришлось, правда, подправить кое-где, но это не так уж и важно)
  • xyz
  • 0
avatar
вообще важно, если есть баги какие-то — пишите
avatar
ну хорошо, у меня было 3 проблемы
0) движок матерился на отсутствующие блоки (мейби из-за того, что он 0.4) — решил просто — закинул блоки от шаблона new
1) цсс не грузились — поменял {$aHtmlHeadFiles.css} на путь к s.css
2)
{if $oTopic->getCountComment()>0}
					<a href="{$oTopic->getUrl()}#comments" title="{$aLang.topic_comment_read}">{$aLang.vlt_comments}</a>
				{else}
					<a href="{$oTopic->getUrl()}#comments" title="{$aLang.topic_comment_add}">{$aLang.vlt_comments}</a>
				{/if}
— vlt_comments не было, соответственно ссылки на комментарии тоже

ну и еще небольшая неточность — в топике выводится внизу {$aLang.comment_unregistered}, лучше бы другой текст задать
avatar
ни конфиг скина не подцепился ни ланг файл. интересно почему?
avatar
ну, из-за версии движка (0.4) видимо
avatar
тогда надо просто настройки и языковые файлы перенести в основной конфиг
avatar
Не подскажите как включить возможность комментирования для мобильной версии?
Большое спасибо за шаблон
avatar
никак не включить. этот шаблон предназначен для ознакомления с новыми материалами появившимся на сайте, пока вы едите, например, в электричке.
Возможно будет более функциональный мобильный шаблон, сделанный специально для смартфонов и других айпадов
Пожалуйста
avatar
Если не трудно, напишите, пжста, для таких как я, как этот шаблон правильно ставить.
  • dddr
  • 0
avatar
создаёте субдомен, ставите копию движка, подключаете её к базе основного сайта, в конфиге указываете мобильный скин. с телефона заходите на субдомен и радуетесь.
можно настроить редиректы
версия движка не меньше 0.4.2, а то конфиги не подцепятся и будут ошибки
avatar
как-то это извратно…
я делал так: в конфиге заменить в начале скин на
if ($_SERVER["HTTP_HOST"] == 'm.site.ru') { $config['view']['skin'] = 'm'; } else {  $config['view']['skin']        = 'new'; }
avatar
да вариантов можно штук 5 придумать, это вообще отдельная тема
avatar
А можно поподробнее? Пожалуйста.
avatar
Куда уж подробнее?
Создаем алиас для домена site.ru — m.site.ru (это зависит от сервера), редактируем /config/config.php — меняем
$config['view']['skin']        = 'new';
на этот код
avatar
тоесть просто создаем алиас и добавляем в скины этот шаб и меняем конфиг?
движок дублировать не надо?
avatar
да, можно не дублировать, если есть возможность создать алиас
avatar
создал синоним m.site.ru
закачал шаблон, внес изменения в config.php
и ничего (
может днсы не прописались пока
avatar
субдоменам не нужно ждать днс

создайте файл test.php

<? echo $_SERVER["HTTP_HOST"] ?>


и запустите его с разных доменов, что выдаёт?
avatar
сейчас попробую
avatar
сейчас попробую
заработало!
только шаблон тотже new (
avatar
так что тестовый файл то выдаёт, в зависимости от домена с которого заходите должен выдавать его название, его нужно вписать в условие в конфиге
avatar
сейчас попробую
avatar
выдает название правильно
в конфиг он и вписан
думаю что закэшировалось что-то
темп очищать надо? полностью всеь?
avatar
я ничего не чистил

ls.cgvault.ru/
avatar
блин
ls.cgvault.ru/
m2.ls.cgvault.ru/

в config.local.php изменил
$config['path']['root']['web'] = 'http://'.$_SERVER["HTTP_HOST"];

и

if ($_SERVER["HTTP_HOST"] == 'm2.ls.cgvault.ru') { $config['view']['skin'] = 'm'; } else {  $config['view']['skin']        = 'new'; }
avatar
@в config.local.php изменил @
а вот я этого не делал )
все заработало!
спасибо огромное
жаль не могу плюсануть (

ЗЫ только с кешированием что-то не то
очищаю кеш нормально стартует, перехожу по вполне корректным ссылкам (показывается поддомен) — выкидывает на new шаблон
avatar
с телефона заходил
тоже new грузит (
точно это надо в конфиг вписывать? ошибки нет?
if ($_SERVER[«HTTP_HOST»] == 'm.site.ru') { $config['view']['skin'] = 'm'; } else { $config['view']['skin'] = 'new'; }
avatar
не выйдет наверное
сайт хостится на nic.ru
а домен зареген у др ресселера (
алиас-то прописал, но не пробрасывает
avatar
У меня тоже домен зареген у другого ресселера, дело не в этом. Я создал поддомен m.site.ru и направил его по адресу папки основного домена site.ru всё вышло замечательно.
avatar
это все конечно чудно, но у хостера поддомен равнозначен сайту, в отличии от зеркала (синонима\алиаса)
лимит по количеству сайтов исчерпан
avatar
Красивый шаблон, конечно

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

ПДАшаблон шаблон возможно будет позже
avatar
Как заставить этот скин работать при использовании aceAdminPanel ???
Там как понял адрес скина из базы данных берётся.
avatar
не из базы данных, а из config.all.cfg в папке тмп. удалите упоминание о скине из этого файла и он будет брать данные из основного конфига
avatar
В tmp нашёл только этот файл: adm.all.cfg
a:39:{i:0;a:2:{s:3:"key";s:20:"config.all.view.skin";s:3:"val";s:20:"s:12:"lavkasovetov";";}i:1;a:2:{s:3:"key";s:20:"config.all.view.name";s:3:"val";s:95:"s:87:"LavkaSovetov - Советы и подсказки на все случаи жизни. ";";}i:2;a:2:{s:3:"key";s:27:"config.all.view.description";s:3:"val";s:86:"s:78:"LavkaSovetov - официальный сайт для взлома жизни.";";}i:3;a:2:{s:3:"key";s:24:"config.all.view.keywords";s:3:"val";s:186:"s:177:"блоги, социальная сеть, бесплатный,LavkaSovetov,lifehack,Lifehacker,Lifehacking,взлом жизни,сделай сам,рукоделие,дом,";";}i:4;a:2:{s:3:"key";s:24:"config.all.general.close";s:3:"val";s:4:"b:0;";}i:5;a:2:{s:3:"key";s:29:"config.all.general.reg.invite";s:3:"val";s:4:"b:0;";}i:6;a:2:{s:3:"key";s:33:"config.all.general.reg.activation";s:3:"val";s:4:"b:0;";}i:7;a:2:{s:3:"key";s:23:"config.all.lang.current";s:3:"val";s:14:"s:7:"russian";";}i:8;a:2:{s:3:"key";s:23:"config.all.lang.default";s:3:"val";s:14:"s:7:"russian";";}i:9;a:2:{s:3:"key";s:23:"config.all.view.tinymce";s:3:"val";s:4:"b:1;";}i:10;a:2:{s:3:"key";s:23:"config.all.view.noindex";s:3:"val";s:4:"b:1;";}i:11;a:2:{s:3:"key";s:32:"config.all.view.img_resize_width";s:3:"val";s:6:"i:500;";}i:12;a:2:{s:3:"key";s:29:"config.all.view.img_max_width";s:3:"val";s:7:"i:2000;";}i:13;a:2:{s:3:"key";s:30:"config.all.view.img_max_height";s:3:"val";s:7:"i:2000;";}i:14;a:2:{s:3:"key";s:26:"config.all.sys.cookie.host";s:3:"val";s:7:"s:0:"";";}i:15;a:2:{s:3:"key";s:26:"config.all.sys.cookie.path";s:3:"val";s:8:"s:1:"/";";}i:16;a:2:{s:3:"key";s:31:"config.all.sys.session.standart";s:3:"val";s:4:"b:1;";}i:17;a:2:{s:3:"key";s:27:"config.all.sys.session.name";s:3:"val";s:16:"s:9:"PHPSESSID";";}i:18;a:2:{s:3:"key";s:30:"config.all.sys.session.timeout";s:3:"val";s:7:"s:0:"";";}i:19;a:2:{s:3:"key";s:27:"config.all.sys.session.host";s:3:"val";s:7:"s:0:"";";}i:20;a:2:{s:3:"key";s:27:"config.all.sys.session.path";s:3:"val";s:8:"s:1:"/";";}i:21;a:2:{s:3:"key";s:30:"config.all.sys.mail.from_email";s:3:"val";s:28:"s:20:"slavik.nazarov@ya.ru";";}i:22;a:2:{s:3:"key";s:29:"config.all.sys.mail.from_name";s:3:"val";s:33:"s:25:"Лавка Советов";";}i:23;a:2:{s:3:"key";s:27:"config.all.sys.mail.charset";s:3:"val";s:12:"s:5:"UTF-8";";}i:24;a:2:{s:3:"key";s:24:"config.all.sys.mail.type";s:3:"val";s:11:"s:4:"mail";";}i:25;a:2:{s:3:"key";s:29:"config.all.sys.mail.smtp.host";s:3:"val";s:16:"s:9:"localhost";";}i:26;a:2:{s:3:"key";s:29:"config.all.sys.mail.smtp.port";s:3:"val";s:5:"i:25;";}i:27;a:2:{s:3:"key";s:29:"config.all.sys.mail.smtp.user";s:3:"val";s:7:"s:0:"";";}i:28;a:2:{s:3:"key";s:33:"config.all.sys.mail.smtp.password";s:3:"val";s:7:"s:0:"";";}i:29;a:2:{s:3:"key";s:29:"config.all.sys.mail.smtp.auth";s:3:"val";s:4:"b:1;";}i:30;a:2:{s:3:"key";s:35:"config.all.sys.mail.include_comment";s:3:"val";s:4:"b:1;";}i:31;a:2:{s:3:"key";s:32:"config.all.sys.mail.include_talk";s:3:"val";s:4:"b:1;";}i:32;a:2:{s:3:"key";s:29:"config.all.sys.logs.sql_query";s:3:"val";s:4:"b:0;";}i:33;a:2:{s:3:"key";s:34:"config.all.sys.logs.sql_query_file";s:3:"val";s:21:"s:13:"sql_query.log";";}i:34;a:2:{s:3:"key";s:29:"config.all.sys.logs.sql_error";s:3:"val";s:4:"b:1;";}i:35;a:2:{s:3:"key";s:34:"config.all.sys.logs.sql_error_file";s:3:"val";s:21:"s:13:"sql_error.log";";}i:36;a:2:{s:3:"key";s:28:"config.all.sys.logs.profiler";s:3:"val";s:4:"b:0;";}i:37;a:2:{s:3:"key";s:33:"config.all.sys.logs.profiler_file";s:3:"val";s:20:"s:12:"profiler.log";";}i:38;a:2:{s:3:"key";s:29:"config.all.sys.logs.cron_file";s:3:"val";s:15:"s:8:"cron.log";";}}

При удалении чего — либо выдаёт ошибку.
И этот файл ведь может обновиться. При очистке тмп.
avatar
на самом деле этот вопрос лучше задать avadim'у.
как вариант можно просто в .htaccess сделать редирект на копию движка на поддомене и там уже отдельно прописать всё почеловечески
avatar
Задам ему вопрос! А делать копию движка на поддомене…

Для Меня это не желательно. Да и наверное неудобно 2 движка держать. Особенно если понадобится что то поправить.
avatar
в мобильной версии то что менять особо?
avatar
Решился вопрос так:
В админпанели: Сайт — Сброс данных — Сброс конфигурации
И все настройки делать только через конфиг-файл

Только теперь про просмотре статей выходит ошибка в этом шаблоне:
Fatal error: Uncaught exception 'Exception' with message 'Can not find the block`s template: stream' in 
сайт.ру/engine/modules/viewer/Viewer.class.php:506 Stack trace: #0 
сайт.ру/engine/modules/viewer/Viewer.class.php(428): ModuleViewer->DefineTypeBlock('stream', NULL) #1 
[internal function]: ModuleViewer->AddBlock('right', 'stream', Array, 100) #2 
сайт.ру/engine/classes/Engine.class.php(348): call_user_func_array(Array, Array) #3 
сайт.ру/engine/classes/Hook.class.php(45): Engine->_CallModule('Viewer_AddBlock', Array) #4 
[internal function]: Hook->__call('Viewer_AddBlock', Array) #5 
сайт.ру/plugins/niceurl/classes/hooks/HookUrl.class.php(245): PluginNiceurl_HookUrl->Viewer_AddBlock('right', 'stream', Array, 100) #6 
сайт.ру/plugins/niceurl/classes/hooks/HookUrl.class.php(104): PluginNiceurl_HookUrl->AddBlocks() #7 
[internal function]: PluginNiceurl_HookUrl->InitAction(Array) #8 сайт.ру/engine in сайт.ру/engine/modules/viewer/Viewer.class.php on line 506
avatar
А закрытый режим сайта не продуман, все спокойно читается.
Причины непонятны :(
avatar
в скине не предусмотрена авторизация вообще. какой еще закрытый режим?
avatar
Ну инвайты, суверенный лепрозорий и т.п.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.