MaxSite CMS 0.23
01-10-2008Время чтения ~ 3 мин.Versions 39885 Эта версия содержит множество мелких исправлений и дополнений, многие из которых я уже упоминал.
Исправлена ошибка, возникающая при выводе списка рубрик, если у рубрики указать саму себя в качестве родителя (происходило зацикливание).Ушку можно выводить прямо в тексте [ ushka=reklama ] - выведет ушку «reklama»Введен файл p.php в /controllers/. Он служит для тех, кто желает сохранить прямую GET-адресацию WordPress: http://сайт/?p=123. MaxSite CMS будет искать в базе страницу с id=123. Для того, чтобы ввести такую адресацию переименуйте p.php-distr в p.php. Данная возможность может конфликтовать с плагином sape.ru 1009 (не до конца оттестировал).В плагине «Sitemap» добавлен вывод синонимов ссылок для страниц: page/slug, slug, page/id, id.В плагине «Page parent» исправлен вывод дочерних страниц (раньше отображались и черновики).В плагине «Антиспам» можно указать номера комюзеров, которые всегда отправляются на модерацию.В плагине «Календарь» убрано ограничение на даты раньше 2008 года. Теперь стоит 2000.Исправлены некоторые ошибки виджета рубрик, а также функции получения «дерева» рубрик.При добавлении новой рубрики теперь проверяется существование такой же рубрики только по короткой ссылке (slug) (раньше - по заголовку).Добавлены новые опции для функции mso_create_list.Изменена страница настроек рубрик. Теперь рубрики отображаются списком с учетом вложенности и порядка. Правда пришлось пожертвовать эстетическими моментами, потому что я не знаю, как сделать красивое выравнивание.При удалении рубрики у её дочерних подрубрик устанавливается родитель 0 (т.е. без родителя).В контактной форме в качестве email отправителя используется указанный в форме адрес.В ini-файлах для combobox (select) можно указывать описание пункта через «||»: значение||текст для отображенияВ опции «Смещение времени» добавлены часовые пояса с указанными городами.Исправлена ошибка если две [ image ] указываются подряд и без описаний.Автосохранение производится в файл autosave-NN.txt, где NN - номер записи. Это позволяет делать автосохранение для каждой записи отдельно.Автосохранение теперь выполняется только если текст в редакторе изменен.Добавлена принудительная очистка кэша по истечению его времени жизни. Для этого при каждой очистке кэша создается пустой файл. При загрузке система проверяет время создания этого файла и, если он превышает установленное время жизни кэша (по-умолчанию 24 часа), то происходит сброс кэша. Этот механизм позволяет исключить «замусоривание» кэша старыми файлами в случаях, когда на сайте не происходит «ручного» сброса при работе в админ-панели.Вот это основные изменения.
Обновление выполняется как обычно: достаточно переписать файлы поверх старых. После этого очистите кэш.
Скачать MaxSite CMS 0.23 914
Максим, сорри если уже было где то сказано, ЧПУ можно ли задавать следующим образом, вместо
http://сайт/?p=123 или
http://max-3000.com/category/antiobnaruzhitel-ssylok-sapy
сделать без имени категории ?
http://max-3000.com/antiobnaruzhitel-ssylok-sapy
Можно. Если slug принадлежит рубрике. Только вывод ссылок придется делать своей функцией или указать пустой тип в mso_page_cat_link.
Последний релиз, при входе в админку или размещении комментария:
Severity: Warning
Message: Cannot modify header information - headers already sent by (output started at /home/multra/domains/multra.ru/public_html/application/maxsite/mso_config.php:1)
Пользуюсь текстовым редактором Notepad2, пробелов в начале файла нет.
А ещё я сдуру секретную фразу поменял, думал в ней ошибка :(
Ну так и сохраните файл в utf8 как положено.
Сохранил как ANSI - всё заработало. Кстати, и на WP такое у меня было, точно помню.
А с секретной фразой что делать? как восстановить пароль?
1. Зашел в админку, Группы пользователей - вся страница в сообщениях:
Severity: Notice
Message: unserialize() [function.unserialize]: Argument is not a string
Filename: admin_users/group.php
Ниже все отображается, мне оч понравилось - удобно. После редактирование нотисы исчезли.
2. Цифры капчи почему-то не меняются (меняются цифры, которые не надо вводить, верхние).
3. Думаю, нужна страница "Как помочь проекту", где собрать все способы: финансово, обратной ссылочкой, созданием шаблонов дизайна и т.п.
4. Секретную фразу откопал, тьфу-тьфу-тьфу. Все ок!
5. После добавления новой страницы (в меню добавил) долго не мог найти эту кнопку на сайте. Потом она вдруг появилась - видимо кеширование сработало не к месту. Наверное, из админки изменения должны идти поверх кеша?
Кстати, да, в предыдущей версии нотайсы были и у меня.
Alexei, цифры на капче не должны меняться (в течении сессии), так и задумано - ради того, чтобы если ошибся при отправке, можно было вернуться и переотправить.Да, ещё, Alexei, имейте в виду, что работа с разделением прав пользователей ещё не закончена. Там многое не доделано и не работает. Для многопользовательности CMS ещё не готова.
P.s. Капча 7227
Обновился!
Но по ссылке http://бла-бла-бла.com/admin/home все равно пустая страница. Или это так надо?
Если у кого-то тоже появятся, то сохраните скриншот или полностью сообщение. Что-то я никак не могу воспроизвести ошибку...
Да, пока это задел на будущее.
Я подозреваю, что это включенное Глобальное кэширование. Его можно использовать только если сайт подразумевает статичную информацию. Для обычного блога лучше отключить.
В стандартном шаблоне шаблоне картинка в заголовке обрезается в IE. Все работает, если добавить "width: 910px;" здесь:
очень неудобная работа со списком страниц в админке.
конвертнул старый блог с diary.ru в котором >2000 записей.
совершенно не реально найти в выпадающим списке нужную запись чтобы ее удалить.
нужно или список страниц разбить "пагинацией" или хотя бы кнопку "удалить" ставить рядом с каждой записью чтобы избавиться от выпадающего списка.
Было бы очень удобно, если бы кнопка "удалить" была и в режиме редактирования страницы.
http://img296.imageshack.us/my.php?image=screenxu2.jpg
Перелил базу с хостинга в денвер. Поверх базы с тремя имеющимися записями. Там почти под сотню страниц (кстати, да, неудобно списком пользоваться - я пока для этих целей приспособил скаффолдинг от Рэмбо). На кодировку внимания обращать не обязательно, я не для тех экспериментов переливал. Потом разберусь.
Верхний блок: таб-виджет.
Первый сайдбар:
category_widget 1
category_widget 2
category_widget 3
tagclouds_widget 1
last_pages_widget
login_form_widget
Второй сайдбар:
links_widget 1
twitter_widget 1
twitter_widget 2
После логина нотайс в заголовке исчез, в сайдбарах остался. По одному нотайсу на каждый виджет, кроме твиттера и логина. После вылогинивания в заголовке не появился.
P.s., Список страниц при большом количестве записей - это меньшее зло. Туда можно приспособить сортировку по любому столбцу by jquery, а если jquery может, то и фильтр. А вот делать сильноветвистую структуру уже хуже. Когда под сотню записей, выбирать родителя страницы при создании из выпадающего списка немного неудобно. Что будет при паре тысяч записей - боюсь представить.
2Wave
да хотябы кнопку "удалить" выводить на каждой строке в списке страниц и на форме редактирования страницы.
пробывал сам, но там чтото больно хитро, неасилил. Никогда не писал на пхп, сделал загрузку данных из дампа сервиса diary.ru, вместо хелловорд и выдохся :-D
Ого, 2000! Пагинацию добавлю.
А вот выбор родителя - это да, проблема. Даже не представляю как к этому вопросу подойти... :(
Ну, скажем, селектор и поле ввода. Если выбрано в селекторе, то поле ввода игнорируется. Можно ещё логику разную добавить. Например, если записей многа, то селектор и не показывается. Или сделать опциональным.
Мне больше всего нравится, как сделано управление записями в вордпрессе с плагином "Admin Management Xtended". Пагинация есть. Есть чекбоксы и с выбранными записями можно: ... Нет, это с комментариями можно, а записи можно только удалять. Есть фильтр по категориям, можно налету аяксом редактировать заголовки, авторов, рубрики, метки, слаги, разрешённость комментариев, дату, видимость (опубликовано или нет).
Если б там ещё была сортировка по любому из столбцов и более продвинутый фильтр, то вообще бы идеальное управление было бы.
Лелею мечту, что здесь появится что-то аналогичное.
Пытаюсь сам реализовать, но пока что-то не получается, и маловато времени. Да и лично для моих целей скаффолдинг справляется.
p.s. Выяснил на практике, что коммюзеры даже в пределах одной сессии не видят свои комментарии, ожидающие модерирования :)
Спасибо, буду разбираться.
А вообще похоже, что кэш старый используется...
Таки да, кэш.
Почистил файловый кэш - полководец Нольэмоций.
Зашёл в настройку сайдбаров и виджетов - та же картина с нотайсами. Сохранил - нотайсы в админке не исчезли, но исчезли после обновления страницы, а нотайсы с сайта исчезли.
Аналогично, наверняка, было и с группами пользователей.
Я обновил mso-0-23.zip с учетом всех последних замечаний. На всякий случай добавил подавление этих предупреждений. Но вообще это из-за старого кэша - для его сброса достаточно войти в админку и что-нибудь сохранить, например опции. Кэш сбросится.
>Я обновил mso-0-23.zip с учетом всех последних замечаний.
так теперь нужно поновому еще раз обновляться?
Как хотите. Если ошибок не было, то можно не обновлять.
Или аяксово: всплывающее окошко со списком, а в нём разные сортировки и фильтры. :-[
А вообще, элементарное ведь действие:
в каталог jquery (application\maxsite\common\jquery) кидается плагин jquery.tablesorter.js
В админском шаблоне (application\maxsite\admin\default.php)
после строчки добавляется строчка
В плагине списка страниц (application\maxsite\admin\plugins\admin_page\admin.php)
там где задаётся шаблон таблицы, меняем
на
И уже можно щелчком по заголовку сортировать таблицу страниц. Записи теперь легче искать по имени, дате, id, автору, флагу публикации.
Для красоты решения ещё надо бы поправить стили заголовка таблицы, чтобы было видно, что можно по ней сортировать, и чтобы был виден способ и порядок сортировки. Но мне для себя это делать влом.
Хотя... Максим, каким порядком принимаешь присылку таких вот мелких патчиков? в коде?
Соори, кусок кода вырезался. И неверно указан файл шаблона.
application\maxsite\admin\template\default\template.php
после неё добавляем
может сделать раздел download? а то минут пять искал ссылку на эту страницу
на Вашем форуме некто выложил доработанный плагин для облака тэгов
может имеет смысл включить его в дистрибутив ?
только небольшой ньюанс с установкой, нужно выключить, а потом включить плагин в админке, чтобы он заработал.
А как, уже есть возможность нормальный сайт сделать на этой системе?
Сайт будет содержать:
Есть ли возможность делать иерархию тэгов?
Есть ли возможность гибко управлять правами пользователей на редактирование материалов?
Каталоги разного рода делать одно удовольствие. Иерархия разного рода есть. Можно выстраивать иерархию страниц, рубрик, делать разные типы материалов и по разному их отображать. Это всё куда гибче, чем в вордпрессе.
Зато права пользователей - это недоделанный вопрос.
С одной стороны можно назначать группы пользователей и гибко им редактировать права доступа. В том числе на создание или редактирование страниц, доступ к списку страниц, редактированию рубрик и так далее.
С другой стороны чаще всего (не всегда) эти разрешения только убирают ссылки на нужные действия. Зная прямую ссылку можно добраться до некоторых опций, до которых не имеешь права добираться. Поэтому в качестве многопользовательской системы эта CMS годится либо для секретарш, которым и не интересно залазить в разделы настроек, либо для друзей, которые доверяют друг-другу, мол, не хакнет никто из круга.
Плагинов для cms мало, а шаблонов готовых всего три, зато писать свои плагины-шаблоны для неё одно удовольствие.
при импорте записей приделывал такую штуку, что для заголовка записи берется первые 150 символов самой записи и столкнулся с проблеммой (не плохо было бы добавить такю фичу кстате).
Если в заголовок попадают такие символы как
&
,"
, неразрывный пробел, перевод строки и т.д, то slug созданый по такому заголовку будет неработоспособный.при клике на ссылку с таким slug попадаем на 404.
а не писать - другое
Не совсем. На данный момент (0.23) существует только одна такая страница: для автора, не имеющего разрешения можно получить список всех других авторов. В 0.24 она уже поправлена. О других лазейках я не в курсе, но постоянно тестирую и ничего не нахожу. ;)
Можно какой-то пример? При конвертировании из WordPress все slug автоматом преобразовываются в правильные url. Как раз все эти спецсимволы удаляются. Так что хотелось бы услышать более подробный пример.
А оттуда можно изменить чужой профиль, задать пароль пользователю с более высоким доступом, зайти из-под его логина и натворить дел...
Перепроверил... Виноват, чужой пароль он сменить не может, может только чужой профиль отредактировать.
Кстати, я вот чего подумал, раз такое дело, может, со страницы "Мой профиль" делать редирект на страницу admin/users/edit/id
Всё равно туда доступ может кто угодно получить, зато уже какое-никакое редактирование собственных данных.
Или... Секундочку, сменить чужой пароль не получается из-за нехватки привилегий? Хотя доступ admin/users/edit/id есть у всех? Нет, перепроверил, свой пароль так меняется в любом случае.
Вобщем, 0.24 буду считать очередной серьёзной вехой для.
Убивает эта галочка, по дефолту установленная в анонима. Особенно учитывая, что логин\пароль у меня в ФФ запомнены и всегда по умолчанию заполнены. Нужно только не забыть галочку переставить. А что если реализовать такую логику: по дефолту галочка внизу, но если приходят пустые мыло\пароль - считать, что комментарий от анонима?
По-моему, не существует ещё ни одной cms, которая позволила бы из коробки без вложения знаний и времени создать достаточно сложный сайт. В качестве бонуса: ни одной cms, которая..., и которая при этом была бы быстрой и лёгкой. Эта - позволяет сайты определённой категории. Примерно той же, что вордпресс. Человек без знания php и возможности нанять специалиста может предпочесть её. Но у вордпресса есть преимущества: дохрена плагинов, в том числе e-commerce, интеграция с форумами, галереями, ещё там всякое... Комьюнити, известность. Шаблоны. Без специальных знаний на вордпрессе ещё можно сделать сайт, который не сделаешь на maxcms. И даже есть шанс, что он не будет тормозить и будет недырявым.
Лично мне эта система симпатичней прочих и там, где ею можно обойтись, я стараюсь ею обходиться.
Максим, а уж когда коммьюзер обозначился как коммьюзер, то не лучше ли хотя бы в таком случае в течении его сессии галочку поставить в поле коммьюзера.
Да не может он чужой профиль редактировать. Он его вообще не видит. :) Даже если ввести адрес напрямую, то для запрещенных действий будет выкидывать на пустую страницу (или Информацию).
Плагины для WordPress можно условно разделить на несколько категорий:
Поэтому критерий «дохрена» не совсем точный. Толку например от Х-плагина «виджет рубрик», если он может быть только один? А в MaxSite CMS любой виджет может быть сколько угодно раз, да еще и с массой самых разных условий для отображения. Таким образом в WordPress разные разработчики наштампуют десять плагинов для разных условий, а у меня только один, зато универсальный.
Я конечно согласен, что для WordPress в общем выражении плагинов бльше. Но вот если быть только функциональность, то выйдет не больше, чем у меня. Да и к тому, же нужно понять, что в том же WordPress многие плагины - это не собственные разработки WordPress, а интеграция уже готовых решений.
Шаблоны в MaxSite CMS проще и логичней, чем в WordPress. Конечно, если человек вообще ноль в PHP и HTML, то ему ничего не поможет, разве что копипасте.
Ну да, если брать хостинг хотя бы от 20$ в месяц. Последние версии WordPress не имеют файлового кэша и требуют для работы минимум 24Мб. Тут даже неспециалисту понятно, что дело - труба.
Для комюзеров будет возможность ввести свои данные (логин и пароль) в специальной форме. После этого их данные сохранятся в куках и сайт будет их узнавать. Соответственно вводить еще раз свои данные не потребуется. Пока я еще думаю, как это всё сделать.
Я, перед тем как писать, перепроверил. Сейчас проверяю ещё раз. MSO 0.23, два пользователя из группы, которой
Не разрешено. Но разрешено менять свои анкетные данные.
Захожу под одним пользователем, захожу по admin/users/edit/3 id другого пользователя и меняю там всё. Всё кроме пароля успешно меняется. Пароль поменялся неуспешно. Т.е. на тот, который я использовал для ночных экспериментов. То ли ночью успешно поменял и не вспомнил об этом, то ли хрен его знает, но из-под второго пользователя еле зашёл.
В тестовой версии всё нормально. Чужой профиль не виден с пометкой "доступ запрещён". Но тестовая появилась только вчера ночью.
Я же об этой дыре ещё чёрт знает когда сообщал, и именно из-за неё не стал использовать mso там, где предполагается несколько пользователей. Там, правда, редактор ещё нужен тот, который умеет вставлять из ворда...
Это не дыра. Это недоделка. Я об этом и сам писал. ;) Поблема в том, что я планировал создать для редактрования разных полей разные разрешения. Но там очень сложная логика получается, поэтому все путается. Сейчас я просто решил ограничиться одним разрешением на редактрование чужой анкеты. В 0.24 так и будет. А в 0.23 было по старому.
А когда планируется введение удобного интерфейса для вставки картинок?
И расширенной возможности для изменения свойств картинок в редакторе?
После того, как доберусь к визуальному редактору.
Я установил maxsite на хостинге, при установке не сделал секретную фразу, сейчас я прикрутил другой домен к сайту. Сейчас все попытки залогонится на сайт с другим доменным именем неудачны, как, впрочем, в инструкции по установке. Что посоветуете?
Можно указать секретной фразой старый адрес, где устанавливалась система.
Максим, а в какой форме писать адрес? С "http"? С "/" в конце?
Да, именно так.
Здраствуйте!
Установил движок на сайт, а как войти в админку не знаю:((
Подскажите
У меня вопрос по ЧПУ.
Пока не нашел как добавить разширенеие в конце ссылки.
т.е. перенастроить ссылки: link/ в link.html
Есть такая возможность?
Спасибо большое:), впреть буду внимателен :)
Зашёл в админку, в рубрике страница нажимаю создать и мне выдаётся такая ошибка
Fatal error: Cannot redeclare admin_page_autoload() (previously declared in /var/www/denis/data/www/unrau.ru/application/maxsite/admin/plugins/admin_page/index.php:13) in /var/www/denis/data/www/unrau.ru/application/maxsite/admin/plugins/admin_page/form.php on line 16
Подскажите пожалуйста в чём проблема.
Если кому то интересно, то после обновления до версии 0.24 ошибка пропала
А кстати, как этот момент взаимодействует с адресами с www и без www? Точно так же? С одного залогиниться можно, а с другого нельзя?
Я-то секретную фразу указываю, но чтоб знать.
Если секретная фраза не указана, то берется адрес сайта. Поэтому вход с www и без www будет разным. Таким образом войти получится только по тому, с которого была инсталяция.