avatar
+62.91
154.072

Вадим

Это был баг не движка, а шаблона. Исправлено
и Большую Красную Кнопку «очистить кэш», которая также будет автоматически нажиматься при включении/выключении плагинов
А вот обе эти фичи есть уже сегодня
Да, на Альто переехали именно Персональные Страницы, а не головной сайт :)
Была такая мысль. Но тормознулся именно из-за большого числа дерганий. Тут, наверное, лучше по другому пути пойти — если уж и дергать ФС, то сравнивать даты исходных файлов и результирующих и так определять, изменилось ли содержимое набора. Но при этом обязательно предусмотреть опцию, которая будет отключать это сравнение (Смарти примерно так работает с компилированными шаблонами).

Тогда можно будет, с одной стороны, получить автообновление с опциами по умолчанию, а с другой — отключить лишние проверки на рабочем проекте, когда известно, что ничего не меняется
Решил отдельной статьей выложить, т.к. «внезапно» оказалось, что много чего еще можно про это написать :)
altocms.ru/blog/inside/600.html
Я понимаю, о чем речь: сейчас можно задать в админке любое число доп.полей к топику. Но все эти доп.поля в шаблоне по умолчанию выводятся в одном месте. А если стоит задача конкретные поля выводить в разных местах шаблона, то без большого бубна и шаманских заклинаний не обойтись.

Проблема есть, она понятна, куда копать для ее решения — тоже все ясно
Кстати, да, интересный совет. А на сервере для этого какие-то допнастройки нужны?
Может, более логичней было-бы подключать не первый, а последний встречающийся файл, если есть несколько с одинаковыми именами?
Основное предназначение — избежать дублей, поэтому и логика такая: если уже есть, то не трогаем. Плюс такой еще нюанс: как писал выше, имя результирующего asset-файла строится на основе хеша массива полных имен файлов набора. Поэтому, если есть возможность не менять состав набора — лучше не менять, чтоб не перестраивать результирующий ассет.

Но иногда замена может явно потребоваться. Для этого есть доп.параметр replace (забыл про него в статье написать, сейчас добавил). Если его указать, то предыдущий файл в наборе с таким именем будет заменен.

А можно более подробно о том, как должны быть оформлены комментарии, что бы в процессе сжатия они были вырезаны?
Врать не буду — не знаю, надо смотреть. Для минификации используются CSSTidy и JSMin, поэтому надо там копать. Кстати, возможно, сегодня это не лучшие библиотеки в своем классе, не исследовал, а просто взял, как есть, поэтому если кто-то подскажет варианты получше, то в последующих версиях движка можно будет их заменить.

3. Можно еще в статье указать о возможности подключения js/css файлов из PHP кода, непосредственно в экшене
Да, упустил этот момент. Я посмотрю, либо сюда добавлю, либо, если объем большой получится, отдельной статьей расскажу.
Кстати, если я изменю какой-либо файл, изменится ли путь к asset-у, в котором он состоит?
Имя результирующего asset-файла строится на основе хеша имен файлов, которые входят в набор. Т.е. если изменится имя подключаемого файла, то изменится и имя asset'а. А если изменилось только содержимое, то ничего не меняется. Для этого и нужны опции принудительного обновления.
От идеи не отказались. Но она требует дополнительной проработки для реализации, а ресурсов пока не хватает.
О, спасибо! Я видел уже когда-то эту подборку, но не сохранил
А, понял, Вы ставите версию 0.9.7.1
Раз Вы только начинаете работу с движком, то я бы советовал скачать отсюда: github.com/altocms/altocms/releases/tag/1.0-rc4

И когда редактируете файлы, сохранять их нужно в формате «UTF-8 (без BOM)». И лучше не использовать для редактирования под Виндой стандартный Блокнот, а использовать для этого что-нибудь более адекватное. Например это: notepad-plus-plus.org/
Ну так сразу и надо было суть проблемы описать, и все было б ясно.

В момент первого запуска движок пытается собрать в «кучу» css- и js-файлы. Процесс этот довольно затратный по ресурсам, и на локальной слабенькой машине просто не успевает отработать.

Решение: в файле /app/config/config.local.php добавить строки
$config['compress']['css']['merge'] = false;
$config['compress']['css']['use']   = false;
$config['compress']['css']['force'] = true;

$config['compress']['js']['merge']  = false;
$config['compress']['js']['use']    = false;
$config['compress']['js']['force']  = true;
Тогда, для полноты картины обратите внимание на то, что есть две конструкции: безымянные плейсхолдеры (просто знак вопроса и — опционально — тип значения, указываемый одной буквой), и именные плейсхолдеры — это когда через двоеточие задается имя. При использовании именных объем кода чуть больше получается, но зато шансов запутаться меньше. Сравните:
$sql = "INSERT INTO ?_table (field) VALUES (?d)";
$this->oDb->query($sql, $iParam);
$sql = "INSERT INTO ?_table (field) VALUES (?d:param)";
$this->oDb->sqlQuery($sql, array(':param' => $iParam));
Угу, в списке добавилось еще одно поле, а число «вопросиков» осталось прежним
fixed
Все верно, если говорить про ссылку — она именно такая должна быть (необходимый файл шаблона добавлен)
Скорее всего, было отключено в процессе отладки для каких-то целей, а включить забыли. Причем, уже давно, но никто до сих пор внимания не обратил.

Вернул
Ничего не поздно, едем по ссылочке: altocms.ru/crowd/item/2/ и участвуем :)
А если нужны консультации/советы/мысли — мой инбокс всегда открыт...
Все это — консультации/советы/мысли от знающих людей — нужно всегда! Но беда в том, что иногда даже и не знаешь, о чем спрашивать :) Вот я, например, специализируясь, по большей части, на сервер-сайде, и хоть стараюсь отслеживать все, что касается веб-разработки, но наверняка просто не знаю о каких-то методиках, приемах, нюансах спецификации, связанных как непосредственно с HTML-версткой, так и, например, с той же адаптивность, о которой тут спор возник.

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