Рейтинг@Mail.ru



← Что нового будет в в следующей версии Almaz CMS

О фотогалерее Almaz CMS →

Релиз Almaz CMS v.1.1

Главной целью, преследовавшейся разработчиком в этой версии было достижение максимальной упрощенности и безотказности при написании новых и редактировании существующих статей для пользователя. Кроме того, внимание уделялось наращиванию функционала и увеличению возможностей SEO-оптимизации сайтов на Almaz CMS.

В скачиваемом дистрибутиве вы найдете два ZIP-архива: site.zip - это основной дистрибутив и local_site.zip - его содержание заливайте поверх распакованного site.zip с заменой файлов только на тот сайт, где вы будете редактировать и писать статьи (после чего сайт на локалке будет отличаться от сайта на хостинге тем, что под статьями появиться ссылка "Редактировать" и наличием папки 'admin' с редактором. После редактирования нажал "Сохранить" - отредактированная статья заменяет исходную. Все работает правильно, проверено. Предполагается, что написание и редактирование будет производиться на локальном компьютере, хотя возможен вариант установки зеркала сайта для редактирования в какую-нибудь очень глубоко спрятанную от посторонних глаз и шаловливых ручек папку на хостинге... Можно, например, доступ в такую папку закрыть через файлы .htaccess + .htpasswd - рецепт для этого опишу позже в отдельной статье). Кроме того в дистрибутив вложен файл HELP for setup.txt (readmy для установки).

В процессе разработки Almaz CMS версии 1.1 в движок были внесены достаточно большие изменения. Начну с неприятного. В структуру файлов базы статей и файла базы комментариев внесены изменения.

Давайте определимся с терминологией, чтобы описывать дальше. Файлы базы создаются по такой схеме:
Поле данных для переменной - разделитель - еще поле для другой переменной - разделитель - поле третьей переменной и так далее.

Так вот из файлов базы статей удалено самое первое поле и разделитель. В этом поле, которое состояло из 14 цифр, записывалась дата-время создания поста и по сути это поле просто дублировало это же число в имени файла базы и в то же время создавало дополнительные проблемы при редактировании времени поста.
Поэтому, тем у кого сайт на Almaz CMS уже имеет какое-то количество постов, для перевода на версию 1.1 нужно удалить из файлов данное поле.
Регулярные выражения для поиска-замены (два двоеточия подряд - это разделитель, если вы его сменили, замените на свой; в разных текстовых редакторах не каждое из них работает, у меня в Notepad++ сработало только третье, в PSPad работают все три варианта ):

\d{14}::
[0-9]{14}::
\d\d\d\d\d\d\d\d\d\d\d\d\d\d::

В файл базы комментариев наоборот, было добавлено два дополнительных поля, благодаря которым появилась возможность скрипту работать с комментариями не листя директорий со статьями. Попутно было написано два плагина для комментов:

1. Последние комментарии,
2. Топ самых комментируемых статей на сайте.
Архивы для скачивания и инстукции по подключению и настройке будут выложены в ближайшее время в разделе Плагины.

Если файл базы комментариев для версии Almaz CMS v.1.0 строился по схеме:

20090000000000::модерация::Имя комментатора::Email комментатора::Текст коммента::IP комментатора::User-agent комментатора

То в Almaz CMS v.1.1 схема такая:
20090000000000::модерация::папка рубрики::Имя комментатора::Заголовок прокомментированной статьи::Email комментатора::Текст коммента::IP комментатора::User-agent комментатора
Где папка рубрики должна быть написана с закрывающим слешем в конце, например news/

Надеюсь, что произведенные изменения были сделаны еще на той стадии, когда они не будут критичными для пользователей Almaz CMS.

Теперь о том, какие преимущества достигнуты в этой версии.

1. Как я писал в начале этой статьи, основным приоритетным направлением при разработке этой версии было достижение максимальной простоты в процессе создания новых и редактирования имеющихся постов.

Встроенный изначально в движок WYSIWYG-редактор NicEdit хотя и имеет множество преимуществ, все-таки не полностью соответствовал требованиям разработчика Almaz CMS. Но все встреченные в нем минусы были поправлены средствами PHP на стадии сохранения статьи. В частности, при вставке картинок в текст статьи создаваемый редактором код не соответствовал требованиям валидности XHTML 1.1, на котором создаются все страницы сайта. Этот недостаток исправлен. Кроме того, выделение текста жирным, наклонным, подчеркнутым и перечеркнутым шрифтом NicEdit делает через стили, прописывая, к примеру так: <span style="font-weight: bold;">Какой-то текст...</span>, что не есть хорошо с точки зрения SEO-оптимизации текста. Этот недостаток также исправлен. Теперь скрипт при сохранении статьи автоматически заменяет такие стили на соответствующие теги strong, i, u, s.

Кроме того, в страницу редактора встроен маленький файловый браузер для картинок чтобы облегчить вставку изображений в текст постов. Скрипт листит папке изображений (дефолтный вариант - папка images в корне Almaz CMS, имеющая подпапки big и min) и выводит по подпапкам все найденные картинки. Клик по иконке в виде папки с картинками вверху страницы редактора откроет вам этот скрипт во всплывающем окне.

Далее, в WYSIWYG-редактор встроен небольшой скрипт, с помощью которого можно проанализировать текст поста и подсчитать вхождения слов в тексте - выводится 30 наиболее часто встречающихся в анализируемом тексте слов, количество вхождений для каждого из этих слов. Учитывается скромный набор стоп-слов. Весьма полезен для SEO-оптимизации текста и подбора ключевиков. Клик по иконке в виде ключика в районе поля добавления ключевых слов откроет вам этот скрипт во всплывающем окне.

Полностью реализована функция добавления индивидуальных метатегов keywords и description для каждого поста. Их можно указать вручную при редактировании. Если же при редактировании поля метатегов  остануться пустыми,  скрипт запишет  в метатег keywords заголовок статьи, а в метатег description два первых предложения из текста анонса статьи.

Такого комплекса возможностей SEO-оптимизации текстов не найти ни в одной CMS.

2. Реализована функция горизонтальной навигации между страницами постов в рубрике. Теперь каждая статья имеет ссылку на статью, опубликованную в этой рубрике перед ней и после нее.

3. Реализована функция отложенной публикации. Теперь, если дата - время публикации статьи позднее текущей даты - времени, то эта статья не видна ни в блоках ссылок на главной странице, ни на странице рубрики, ни в горизонтальной навигации между статьями, ни в RSS-каналах. Единственный вариант увидеть статью, время публикации которой еще не наступило - набрать URL этой статьи в адресной строке браузера. Данный вариант реализации отложенных публикаций обсуждался на форуме searchengines и был признан оптимальным.

4. Для построения главной страницы теперь имеется два основных блока контента - блок со статичной статьей и блок анонсов статей по рубрикам. Конфигурирование простое - через const.php указать:
1. Выводить или не выводить блок со статичной статьей;
2. Выводить или не выводить блок анонсов + если выводить, то указать, выводить только названия статей (с датой публикации) или еще и с анонсом статьи.
В пределах указаного для главной страницы можно сконфигурировать несколько разных видов построения.

Нет времени прочесть? Поставьте закладку:

Опубликовано: 26.05.2009 02:07:50 в рубрике Новости


Комментарии:

Комментатор - Вадим:

не заработала пока не удалил в index.php
include ('stat.php');
дальше буду разбираться

Ответ от разработчика:

Вадим, можете подробней описать проблему со stat.php - для чего потребовалось его удаление?

Комментатор - 1blogerhak:

Та же проблема, пока тестил на локалке
Пустая страница, если убрать include ('stat.php'); то всё показывается - как лечить?
И не понял описание в const.php:
### ВНИМАНИЕ !!! : Если у Вас будут одновременно проставлены значения для SFP=0 ...

Ответ от разработчика:

Удалите из файла stat.php строку:

<?php require('const.php'); ?>

и подключите stat.php снова (без этой строки) - должно заработать. Отпишите, пожалуйста, помогло ли - тогда я смогу исправить аналогичные места в дистрибутиве и плагинах. Думаю, косяк кроется в повторном подключении при создании страницы конфигурационного файла.
ЗЫ. Тестю на двух хостингах и локалке перед релизом - видимо этого недостаточно...

По второму вопросу:
В конце расположенной выше статьи написано:
4. Для построения главной страницы теперь имеется два основных блока контента - блок со статичной статьей и блок анонсов статей по рубрикам. Конфигурирование простое - через const.php указать:
1. Выводить или не выводить блок со статичной статьей; - это определяется переменной SFP
2. Выводить или не выводить блок анонсов... - это определяется переменной SFPTITLE (обозвал я эту переменную неудачно, заменю название, спасибо, что внимание обратил).

То есть контент главной страницы состоит из двух подключаемых блоков: блока со статичной статьей и блока ссылок на последние статьи в рубриках. Если отключить вывод на главной и того и другого блока, то, соответственно, на главной странице контента не будет... Поэксперементируй, если я плохо объяснил.

Комментатор - kvn1963:

Notice: Use of undefined constant YmdHis - assumed 'YmdHis' in z:homelocalhostAlmazCMSindex.php on line 15
то есть:
$next = date(YmdHis);
Что прописать в переменных?

Ответ от разработчика:
Надо исправить, заменив date(YmdHis) на date("YmdHis") в файле index.php в корневой папке и в файле index.php в папке news.

В архиве для скачивания исправил.

Вообще, советую скачать дистрибутив новее - Almaz CMS v.1.2 beta, ссылка на него в этом посте - с этой версии изменилась кодировка в которой работает скрипт. С версии 1.2 beta и выше скрипт в кодировке UTF-8 (до версии 1.1 включительно кодировка была windows-1251).

В ближайшие дни появится новый дистрибутив - с полноценной админкой. Если хотите получить работающий вариант этого дистрибутива сейчас - отпишитесь тут, я Вам вышлю ссылку на Email.

Комментатор - kvn1963:

Плиз на мыло последний вариант ,немогу определиться с CMS!

Ответ от разработчика:
Ссылка на последнюю версию для текущего дня (21.08.2009) Almaz CMS v.1.2.2 beta - здесь

Данная версия имеет изменения:

1. все файлы и папки, на которые требуются права на запись вынесены в папку comments - ее переименуйте как угодно, и пропишите ее новое имя в файле const.php в переменной DATAFOLDER. В принципе, данную папку можно зарыть куда-нибудь поглубже, главное, чтобы в переменной DATAFOLDER к ней был правильно прописан путь от корня скрипта и без слешей по краям.

На все текстовые файлы, а также папки, находящиеся внутри нее (кроме файла index.php) на сервере требуются права на запись. На саму папку DATAFOLDER права на запись ставить не требуется.

Это сделано с целью повышения безопасности.

2. Все управление контентом сайта производится из админки. Админка закрывается паролем с помощью файлов .htaccess и .htpasswd - для генерации их содержимого воспользуйтесь страницей в админке (иконка со щитом в меню админки). Сгенерированное содержание впишите в файлы .htaccess и .htpasswd находящиеся в папке admin и перезалейте их на сервер. Внимательно: путь к файлу .htpasswd в сгенерированном содержании файла .htaccess выводится для той папки, где лежит файл генератора - так как предполагается, что и файл .htpasswd-generator.php и файлы .htaccess и .htpasswd лежат в папке admin.
НА ЛОКАЛКЕ ФАЙЛЫ .htaccess и .htpasswd НЕ РАБОТАЮТ - имейте в виду.

Вся конфигурация сайта производится в файле const.php.

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

Пока не доделана локализация, часть текстов в админке будет на английском. На лицевой части сайта для посетителей косяков в этом не видел.

Допишу плагин для on-line тестов, потом в плане плагин для простого магазина, после чего буду окончательно доделывать локализацию, уже со всеми плагинами.

Очень бы хотелось узнать Ваше мнение после тестирования - какие минусы и плюсы Вы увидели.

Комментатор - kvn1963:

Almaz CMS v.1.2.2 beta
при открытии любой страницы сбрасывается кодировка приходится восстанавливать каждую страницу вручную(на денвере)

Ответ от разработчика:
На Денвере установлена в качестве дефолтной кодировки windows-1251.
Almaz CMS работает в кодировке UTF-8.

Об этом было написано в этой статье.
Лечить можно двумя способами:
1. Либо на Денвере поставить дефолтной кодировку UTF-8 (на хостнгах обычно кодировка, в которой требуется отдавать сайт указывается в панели управления в настройках сервера);
2. Либо предусмотрено простое решение, не зависящее от настроек сервера: файл .htaccess.txt в корневой папке переименовать в .htaccess. В нем первая строка:
AddDefaultCharset UTF-8
определяет, что страницы сайта нужно отдавать в кодировке UTF-8.

Попутное примечание:
Для включения ЧПУ в том же самом файле .htaccess нужно убрать все решетки из начала строк + в файле const.php для переменной ENGINE указать значение 1

Комментатор - Sergio:

тестирую на хостинге- все установки по дефолту:
при попытке попасть в админу и обращении к урлу "сайт/comments" выводит на экране:
п»ї
или я чтото не так понял ?

Ответ:
1. При выводе вот такого: п»ї - однозначно что это у вас, Sergio, сервер отдает данную страницу сайта не в кодировке UTF-8, а в какой-то другой. В файле конфигурации (const.php), в конце, должна быть строка, проверьте:
header('Content-Type: text/html; charset=utf-8');
определяющая для браузера, что получаемая страница в кодировке UTF-8.

Можно дополнительно еще прописать в файле .htaccess строку:
AddDefaultCharset UTF-8
так же указывающую браузеру читать страницу в кодировке UTF-8.

Если вы что-то правите в файлах - сохраняйте файлы в кодировке UTF-8 БЕЗ БОМ. Рекомендую использовать для правки файлов Notepad++. Ни в коем случае для правки не подходит встроенный в Windows блокнот - кодировка летит напрочь.

Добавить комментарий:

При добавлении комментария не должно остаться незаполненных полей.

Имя

E-mail

Комментарий:
Вводите просто текст.
Все HTML - форматирование удаляется автоматически.

← Что нового будет в в следующей версии Almaz CMS

О фотогалерее Almaz CMS →


  • Скачать Almaz CMS
  • Актуальная версия - 1.2.2
  •  
  • ZIP-архив 1.25 Mб
  • Количество скачиваний: 4737
  •  
  • Скрипт бесплатный.
  • Лицензия: GNU GENERAL PUBLIC LICENSE - 2.
  •  
  • Обьявления

    • 26.09.2009

      Шаблоны к текущей версии подходят только те, которые вложены в дистрибутив. Ведутся работы над сайтом с шаблонами, адаптируются старые шаблоны под текущую версию.

    • Все обьявления
  • Темы оформления

    • Тема home

      Скачать шаблон home
    • Тема abrasive

      Скачать шаблон abrasive
    • Тема corporateoffice

      Скачать шаблон corporateoffice
    • Тема astroturfd

      Скачать шаблон astroturfd
    • Тема efflorescence

      Скачать шаблон efflorescence
    • Тема blogging

      Скачать шаблон blogging
    • Тема Christmas-2008

      Скачать шаблон Christmas-2008
    • Тема citylights

      Скачать шаблон citylights
    • Тема colorvoid-website-template

      Скачать шаблон colorvoid-website-template
    • Тема excess

      Скачать шаблон excess
    • Тема hexahedron

      Скачать шаблон hexahedron
    Здесь далеко не полный выбор шаблонов. Все имеющиеся шаблоны для Almaz CMS смотрите на этом сайте.
  •  
  •  
  • Ответьте на вопрос

    • Чего не хватает у движка?

  • Валидация

    • Valid XHTML 1.1
      Valid CSS!
      Site Feed is Valid XML!