Показать сообщение отдельно
  #14 (permalink)  
Старый 29.06.2012, 14:10
Новичок на форуме
Отправить личное сообщение для Mozgoed Посмотреть профиль Найти все сообщения от Mozgoed
 
Регистрация: 29.06.2012
Сообщений: 2

Есть такое решение. И оно называется XmlHttpRequest . С его помощью можно из javascript скачать любой файл с того же домена, где он запущен. Скачивание работает только через UTF-8 кодировку. Поэтому строить такой сайт лучше на базе Юникода.
Своё решение в этой области я попробовал реализовать вот на этом сайте mozgoed-mgoy.narod.ru .
Устроен он предельно просто. Это что-то вроде CMS, которая выводит данные через одну страничку и дополнительные параметры в строке запроса. Внешне выглядит как будто работает на движке Joomla или типа того)
Что нужно чтобы работало:
  1. Создать шаблон и выделить повторяющиеся элементы в нём.
  2. Подключить javascript "engine.js" к странице.
  3. content-type страницы должен быть utf-8
  4. Повторяющиеся блоки сохранить под именами (например footer.htm) в папке "blocks"
  5. В шаблоне вставлять нужный блок через javascript функцию <script>writeBlock(имя_блока)</script>
Добавил модуль новостей и продолжаю развивать эту идею. Данную CMS назвал JSManager или просто jsm. Идеальное применение такого решения - простые сайты визитки и минисайты фирмы.
Минусы:
  • Дольше грузится
  • Невозможно разграничить пользовательские права на сайте. Данные доступны всем.
  • Можно использовать только на маленьком сайте, для управления большим сайтом надо подключать AJAX и действовать через PHP сервер, который по FTP изменяет структуру сайта.
  • Загруженный текст не индексируется (нужно строить карту сайта самому)
  • Большие проблемы с совместимостью на разных серверах. Нормально работает на Chrome, а остальные пока тупят.
Плюсы:
  • Взломать сайт невозможно через интерфейс управления движком. Потому что вывод всех данных производится только на стороне клиента.
  • Шаблонизация страниц. Легче разобраться в коде дизайна
  • Можно быстро изменить какой-либо элемент на всех подопечных страницах. (напоминает глобальные переменные как в uCoz'e)
  • Можно динамически вкладывать одни скрипты в другие. Например забыть про вывод текущего года раз и навсегда через специальную функцию javascript
Ответить с цитированием