Златослав Десятников: Не буду спорить, потому что я боюсь даже предполагать, что вы имеете ввиду под словом «статичен». Особенно после required-чекбокса «available» без лейбла с принудительным отключением автозаполнения и зачем-то динамическим определением состояния во время генерации.
JSinga: Просто признайте факт, что они все ужасны. Единственное, с чем ещё более или менее можно мириться — это кеды. Плюс они ещё и плодятся из-за человеческого фактора. Когда у одной среды появляется «фатальный недостаток», кто-нибудь делает форк и появляется ещё одна уникальная и хорошая среда.
И, к слову, Awesome это оболочка для KDE. Cinnamon — форк GNOME Shell. А MATE — «продолжение GNOME 2» (тоже форк, получается) и т.д.
Просто у вас немного всё в кучу свалено и оболочки и среды.
И факт, что такая куча всего — из-за фрагментации усилий. Когда появляется форк — это и есть фрагментация усилий, так как форк — это когда человек отделяется от основного проекта и пилит свою версию, лишённую фатальных, по его мнению, недостатков.
Андрей Ларин: У меня Total Commander вполне нормально через Wine работает. Фразы «нормальный двухпанельник» и «Total Commander» — это одно и то же ведь, правильно? Просто в Windows тоже нет нормального двухпанельника, кроме TC. :)
ГЛЕБ ГЛЕБОВ: Можно и ссылкой считать, да. :) Хотя true-разработчики JavaScript могут меня за эту фразу побить. Просто, в JavaScript this считается ключевым словом, и ведёт оно себя по-разному в разных контекстах.
MintTea: Можно ещё придраться к фразе: «оно не относится к вопросу, т.к. при грамотном разграничении областей видимости проблемы с переиспользованием переменной просто не возникает» — просто в вопросе вообще ничего не было про грамотное разграничение областей видимости. Этот факт никак не влияет на то, относится замечание к вопросу или не относится. Какой-то другой факт — возможно, но не этот. Вопрос — про ссылки, ответ — про ссылки, комментарий — про ссылки.
Я просто думаю, что если бы любой человек, который советует делать foreach в ссылку, упоминал бы и меры предосторожности, меньше людей вляпывались бы в ситуацию, когда последний элемент массива ведёт себя неадекватно тому, что они от него ждали.
Это не про подход к программированию, это про подход к обучению и раздаче советов новичкам.
MintTea, «foreach ($array as &$item)» — это не очень хорошая идея. Потому что, если вы позже в коде в той же области видимости тронете переменную $item, у вас начнутся сюрпризы с содержимым массива $array. Лучше делать так:
Страница проекта — это как бы завлекаловка. Смысл имеют только условия, указанные в оффере. На странице проекта может быть написана сумма в $1500, но если оффер на контракт будет $500, то сверх этих 500 долларов заказчик не обязан ничего платить.
Mavran: Названия страниц и так далее — это динамически генерируемый контент. Искать его — уже сложнее и нужно понимать устройство Opencart. Если сказать кратко, то этот динамически генерируемый контент подготавливается для вывода в контроллерах. Для header.tpl, например, контроллер находится в <корень сайта>/catalog/controller/common/header.php. Если вы не программируете на PHP и не сталкивались никогда с вариантами реализации MVC, мне будет очень сложно объяснить, как устроен Opencart.
Влад Серов: Я даже и не знал, что такая куча сайтов есть на русском языке про Opencart. :) Я в своё время вообще изучал фичи движка через исходные коды. :)
Проще, так проще — вам виднее. Удачи!