sobachnik А я срал на многочзычность видимо потому что Но заменить их на функу с номером сообщения не сложно. В друпале например вобще более простой интерфейс к этому делу - там ты просто любой текст выводишь через функу. эта функа занимается переводом. Она возвратит оригинальное сообщение если не нашла в бд перевод. Вот так просто и удобно.
переводы UI конечно нужно хранить в одной таблицы, а вот переводы например одной новости на рызные языки, лучше хранить в своей таблице т.к. к переводу будут прилагаться теже мета данные.
YSandro да, у меня пока кол-во файлов по более будет, примерно так: index.php bootstrap.php ClassLoader.php Cache_Preloader.php кеш страницы состоит из 2-х файлов: 1) {md5(trim($_SERVER['REQUEST_URI']))}.gz 2) {md5(trim($_SERVER['REQUEST_URI']))}.meta первым делом читается .meta файл, в нём хранятся данные по валидности даты, набор данных для формирования HTTP заголовков, а так же правила проверки куки. т.е. именно через куки проверяется является ли юзер гостем или нет. в случае если юзер гость и кеш валиден, тогда содержимое файла .gz отправляется клиенту, разумеется клиент получает ответ в сжатом виде и с заголовком Content-Encoding: gzip в итоге кол-во подгруженных файлов в случае срабатывания кеша будет равняться 6, более того еще отработает апач в плане обработки реврайта... разумеется если отдавать кеш страниц не средствами апача и пхп, а nginx, то думаю реакция возрастёт действительно на порядок но я пока не разобрался как средствами nginx анализировать входящие куки... вроде как там есть встроенный интерпретатор perl... в общем по позже буду с ним разбираться
YSandro если хранить мета-данные в отдельной таблице, то увеличивается кол-во запросов в БД... igordata да, но можно сделать так: создаётся одна таблица с новостями в ней поля, даты создания, ури_парт, ид, автора, а также поля для языка по умолчанию, например заголовок, текст новости и мета данные. вторая таблица содержит только поля зависимые от языка, например всё теже заголовок, текст новости и мета данные. в этом случае, если юзер запрашивает новость на языке сайта по умолчанию, то контент извлекается одним запросом, а если другой я язык, то дополнительно выполняется еще один запрос, и если получен непустой результат, то выдаётся перевод, иначе также язык по умолчанию.
ышо PHP: <? function GroupDigits($int, $spaces_only = false) { if ($spaces_only) { return str_replace(':', ' ', strrev(trim(chunk_split(strrev($int), 3, ':'), ':'))); } return '<dg>' . str_replace(':', '</dg><dg>', strrev(trim(chunk_split(strrev($int), 3, ':'), ':'))) . '</dg>'; } [css]/* digits grouping */ dg+dg { margin-bottom: 0px; margin-left: 0.4em; margin-right: 0px; margin-top: 0px; }[/css]
Поднял репу на гитхабе может быть кому-то удобнее будет именно с ним работать https://github.com/d1gi/Smart-Core-CMF
d1gi Добавь, чтобы "Введите ваш Email" исчезало при попадании инпута в фокус. Ну и можно, чтобы появлялось обратно при "блюре", если поле осталось пустым.
Если при просмотре страниц в браузере отключены картинки - некоторых кнопок совсем не видно. Я бы добавил тегам img атрибут alt="..." UPD. Извини, посмотрел исходный код, там не IMG...
ага, со временем сделаем... на данный момент эта демка выложена чтобы внинуть в архитуктуру системы, поиграть с "папками", поперемещать "ноды" а вёрстка и юзерфрендли на данный момент не критично если вам интересно, можете подключиться к проекту и создать по максимуму правильный демосайтик UPD: исходный код надо смотреть не html, а php и именно логику работы с данными.
Если зайти в "Основные свойства ноды" и нажать отменить, то попадаешь не туда, откуда пришёл, а туда, что выбрано в селекте. Например, если открыть свойства горизонтального меню, там зайти в "основные свойства", в селекте папка выбрать "CAPTCHA", а потом нажать "отменить" - откроется просто картинка с капчей Мне кажется, это немножко не то, что ожидает пользователь )) Во всяком случае, я ожидал, что вернусь туда, откуда пришёл.
да сейчас есть такой момент, система редиректит в ту папку куда подключена нода, именно по этому если например посмотреть свойства ноды "меню", находясь при этом не в корневой папке (куда собсна и подключена нода меню), то редиректит на главную... мне очень нравится адмика у друпала 7, с его оверлеями, надеюсь нечто подобное удастся и в сайбжевый двиг внедрить... но у меня пока скилла не хватит такой оверлей сделать проект открытый, можете написать более человеко понятные тексты комьюнити будет вам благодарно!
легко: версий. даже в друпале есть контроль версий страниц. тут - фиг. а так - ваще оч удобная. и можно сразу несколько сайтов держать в одной cms короче, по мне так лучше вливаться в комьюнити, чем делать маленькую новую штучку, которой еще лет десять рости. потом придет понимание, потом новый проект, который за года три доростет до популярности и хорошести, потом еще года четыре будет обкатываться и совершенствоваться. т.е. жизнь твоего проекта расписана по сути на 17 лет вперед. и это не есть гуд. Лучше допилить модыкс, хотя это не так пальцасто, как говорить всем, что у меня своя цмс. Но я тебе по секрету скажу, цмс написать уровня "работает, редактируется" - один день. И без комьюнити вобще не понятно как там что делать. А когда есть комьюнити, вобще не требуется самому писать, а по сути требуются навыки менеджера по организации стада в единую силу. короче если ты решил писать цмс, то это уже не правильно =) правильно решить создать цмс, и пойти в народ и греть комьюнити. =)
на данный момент в движке ведется история сохранения тектовых блоков, но пока нет красивого диффа, по позже ввинчу, а также откаты сделаю... также в системе есть мультисайтовость. скачал свежую версию модх2, завестись отказалась %) по коду посмотрел, тоже впечатлений особых нету... какие преимущества вы выделяете в модх2? или реч шла о модх1?
а меже сказать благодаря чему модх стал популярным? и вообще благодаря чему опенсорц веб инструментарий становится популярным?
Благодаря рекламе о невиданной доселе простоте и гибкости. Поковырялся я с ModX, сначала с Evolution, потом с Revolution. Никакой простоты, свой навороченный и странный язык, тормоза и трудноисправимые глюки типа Parse Error. Одно время чуть ли не каждый второй сайт в инете висел с этой "MODx Parse Error". Для Revolution очень долго не было модулей, никто не писал почему-то, или выкладывали в сыром виде. То есть нужно всё писать самому на новом языке. Но вот админка там действительно хороша.
Мне лично там в админке просто всё нравится. И дружелюбно, и техногенно. От других слышал (контент-менеджеров), что их раздражают висящие над формами кнопки. Но это лечится внушением, что мол всё правильно на самом деле, удобно, просто непривычно.
друпал крутой. был. модыкс удобен. там можно очень гибко настроить всякое под не-специалистов. и они смогут норм рулить контентом.