в общем-то да. Я начал изучение пхп в 2002м с того, что неделю разбирался "почему эта чертова гостевая книга у всех работает, а у меня нет"
Иногда действует мотивирующе, кстати
Ну в общем тут всё уже описали, пока я трясся в электричке с работы домой.
Но если идти дальше, то можно и кое какой динамический контент присобачить (ведь как известно, первое, что хочет лбой начинающий вебмастер, это добавить новости на сайт :) ), используя для этого текстовые файлы, например подобный код выведет n последних новостей из файла news.txt с использованием шаблона news_item_view.html (сейчас накидал за 10 минут);
вставка в тело страницы блока
<?php include_once ('news.php'); $news = new News; print $news -> showLast(3); ?>
news.txt
11.01.2017:Краткая новость 1: Текст краткой новости; 10.01.2017:Краткая новость 2: Текст краткой новости; 09.01.2017:Краткая новость 3: Текст краткой новости; 08.01.2017:Краткая новость 4: Текст краткой новости;
news_item_view.html
<h2>{title}</h2> <small>{date}</small> <p>{description}</p>
news.php
class News { protected $NewsFilename = 'news.txt'; // показывает n последних новостей public function showLast($total = 3) { $news = explode(";",rtrim(file_get_contents($this -> NewsFilename),";")); $viewFile = file_get_contents('news_item_view.html'); $output = ''; if (sizeof($news) > $total ) $maxLines = $total; else $maxLines = sizeof($news); for ($line=0; $line<$maxLines; $line++) { $lineExploded = explode(':',trim($news[$line])); $view = array( '{date}' => date("d.m.Y",strtotime($lineExploded[0])), '{title}' => $lineExploded[1], '{description}' => $lineExploded[2], ); $search = array_keys($view); $replace = array_values($view); $output .= str_replace($search,$replace,$viewFile); } return $output; } }
Господа, вы хоть почитайте, что вы пишете.
то-есть, мы хотели сделать просто, а получилось "как всегда". С чего начали, к тому и пришли. Это установить, тут добавить, еще чутка допилить и мальца проинсталлить.
/закрыл лицо руками/---------- Добавлено 11.01.2017 в 20:09 ----------Aisamiery,
Каждая технология или фреймворк должен использоваться только для того, для чего она разрабатывалась.
Aisamiery, ну вот мы и приходим к тому, что создаем своего крокодила с пропеллером, только не на стороне сервера, а на стороне клиента
mmkulikov, ну телефон можно поменять поиском ... это не самый яркий пример, а вот пример, когда сайт состоит из 3 статических страниц и 2х динамических (новостной листинг и страница с телом новости), и всего таких новостй... ну пусть 48 (за год набралось, раз в неделю)
и надо поменять несколько пунктов в меню, при перемещении статических страниц в другие разделы...
вот уж где писец ночует
вообще то, что тут предлагается, мы проходили еще в 2002м. Поверьте. менять меню на сайте из 30 стат.страниц, это алес капут
так с этим никто не спорит. Так cms cms-ке рознь
Cms это как-бы content management system система управления контентом. И если мне, например, нужно будет сделать сайт, состоящий из трех страниц для себя, я напишу тот-же самый CMS (в оригинальном понимании этой аббревиатуры) на каком-нибудь кодигнитрере. (тем более, что у меня уже есть готовая сборка с блекджеком и ... ну в смысле с hmvc расширением и системой регистрации/авторизации/ролей) но это при некоторых вводных условиях.
1. объем написания кода не должен превышать 20 человекочасов
2. администрирование сайта будет производить его автор. То-есть это проект "для себя"
3. проект не является разовой работой.
в противном случае, при передаче проекта заказчику, да еще и без договора на обслуживание, они вас зае**т. Ведь найти девочку, которая в визивиге будет править страницы, это одно, а бородатого мужика в драных джинсах и уставшим взглядом -- это совсем другое, причем как по сложности, так и по цене.
вот как-то так.
Вебасист это такой-же фреймворк как битрикс, или вордпресс. Наличие определенного, весьма скудного и не ахти как задокументированного, АПИ не делает его фреймворком.
Боже, о каком роутинге вообще речь идет. Тут разговор шел о том, что человек сделает верстку вместо 100 килобайт в 10. А вы уже в такие дебри полезли. Просто для него "код" это верстка, а не моторчик.
На самом деле надо посмотреть прогресс загрузки не на круговой диаграме, а на вкладке network в дебагере.
Тут возможна такая штука. Сначала загружается голова (кстати, грузится она 0.7 секунд, что довольно вяло, но, в принципе, если html большой, а движок тяжелый, то возможно) потом оно подтягивает JS (так как многие разработчики по совету гугла пихают JS в хвост) потом по появлению флага, что DOM готов, запускается скрипт, например какого-нибудь онлайн-чата или счетчика или системы внешней авторизации (вроде логинзы) и он подтягивает данные (css/картинки) с другого ресурса а вот у того "другого" своего ресурса уже время ответа как с Марса. Вот и получается, что на загрузку сайта надо минута, хотя в реальности, сайт грузится за 3-4 секунды.
у меня был случай, году в 10м, работали мы тогда с адривером. сайт большой. посещаемость около 1 млн посетителей. Так вот, из-за адривера страницы грузились по 40-50 секунд, причем иногда так, что там даже флаг document.ready не выпадал
Bootstrap юзайте, если ленитесь верстать ручками
Александр И, когда у вас на поддержке 75 сайтов, отличающихся друг от друга цветом шкурки, и расположением почти однотипных блоков, это реально удобно. поверьте. Это позволяет вносить изменения в какой-либо дефолтный блок или элемент блока, тем самым меняя только его, не трогая, при этом всю остальную обвязку. (мало того, сохраняется и раскраска, которая у нас вынесена в отдельный файл)
если мы говорим о разработке одного сайта, да еще там, где требуется минимизировать объем, данная структура оказываается избыточна, но когда этих сайтов десятки, сайты работают на едином движке и отличаются только контентом и цветами. это удобно.
зы. прочем, мы уже оффтопим