Бесплатная CMS для вашего сайта Разумная альтернатива WordPress

MaxSite CMS 0.32

20-05-2009Reading time ~ 3 min.Versions 31467

Весёленькая версия :), потому что за почти три месяца набралось очень много изменений. Увеличилось количество плагинов: теперь их в комплекте 61. Я включил плагин голосования Евгения Самборского, хотя сразу предупреждаю, что это не окончательный вариант и могут быть ошибки (обратите внимание, что для работы плагина требуется PHP 5).

Произошли изменения в структуре шаблонов. Точнее она стала более гибкой для кастомизации. Я об этом специально уже говорил.

Еще меня порадовало то, что появились плагины других разработчиков. Например в MaxSite CMS 0.32 вы найдете: 3d-облако тэгов, виджет «Веб-альбомы Picasa», кнопки смайлов для формы комментария, плагин для прятания текст под Spoiler, виджет самых активных комментаторов, плагин гостевой книги и плагин глобального кэширования.

Плагин глобального кэширования я сделал для того, чтобы вынести логику кэширования из шаблона. Проблема здесь в том, что закэшировать можно любую страницу. Но вот обновление страниц должно происходить по более сложному алгоритму. Например появился новый комментарий - кэш должен обновиться. Если делать по уму, то кэш только этой страницы, а не весь. Для других случаев могут быть другие условия. Таким образом удобней управлять кэшем из плагина, чем менять шаблон. Изменения в шаблоне очень просты. Вместо начального кода нужно задействовать хук global_cache_start, вместо конечного global_cache_end. Там две строчки кода и вы их можете посмотреть в шаблоне default в файле index.php. Отмечу, что старый вариант также работает и если вы не пользуетесь глобальным кэшированием, то ничего менять не нужно.

Изменения в загрузке файлов (Загрузки). На форуме мы обсуждали эту проблему. Кратко: при загрузке браузер отдает т.н. mime-тип файла. CodeIgniter проверяет разрешенные типы и от этого определяет разрешена ли загрузка. Проблема в том, что браузеры по разному формируют mime-тип и из-за этого некоторые файлы не загружаются. Проанализировав код, я решил изменить алгоритм CodeIgniter и отказаться от проверки mime-типа. Вместо этого проверяется расширение файла. То есть теперь CodeIgniter работает предсказуемо.

Проблемы с почтой. В CodeIgniter для отправки почты использует php-функцию mail с параметром «-f». Оказалось, что не на всех хостингах это работает, поэтому разработчики CodeIgniter придумали проверять safe-режим. Получилось, что на некоторых хостингах почта работает, а на других нет. У меня не хватило знаний выяснить зависимости, поэтому при отправке почты CodeIgniter принудительно указывается «$CI->email->_safe_mode = true;». Теперь должно все работать.

В админ-панели появилась возможность фильтровать записи по рубрикам, типам.

При комментировании стабатывает хук «add_new_comment».

В mso_flush_cache() добавил третий параметр $file, который позволяет удалить одиночный файл кэша.  

В плагине Ссылки (links) добавил возможность указать скриншот сайта.

Подсчет количества прочтений записи (mso_page_view_count_first) теперь может вестить с помощью куки, сессии или без онных.

Управлять выводом строчки «Подписаться на эту рубрику по RSS» в типе category можно с помощью опции «category_show_rss_text» (тип - «templates»). То есть в шаблонном options.ini задайте соответствующую опцию. Это, конечно, кому нужно. ;-)

А также много других мелких изменений. Хочу отметить, что основную массу изменений я внес благодаря участникам форума, за что им большое спасибо!

Скачать MaxSite CMS 0.32 865 (ок. 1.8Мб)

Related Posts
Comments (45) RSS
1 Axel 2009-05-20 18:59:05

В readme к плагину Сomment smiles написано:

Для корректной работы плагина необходимо переименовать файл /uploads/smiles/rasberry.gif в /uploads/smiles/raspberry.gif

У вас по-умолчанию - не переименовано и смайл не отображается...


2 Максим 2009-05-20 19:06:52 admin

Зато файл на месте. :coolsmirk:


3 RedRoot 2009-05-20 19:17:47

Пол дня регулярно рефрешил главную страничку max-3000.com

Свершилось :)

Порадую себя и нескольких корпоративных клиентов свежим функционалом :)


4 Максим 2009-05-20 19:38:34 admin

Ого! А rss для чего? :coolsmile:


5 Белый хозяин 2009-05-21 03:22:23

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


6 MadBadJack 2009-05-21 05:10:32

У мну после обновления обнаружился баг. На главной сайта + на страничках tags/что-либо некорректно отображаются виджеты. А именно, сменили сторону относительно центральной части, были справа, стали слева. Причем на всех остальных страницах, как то "О сайте" "Комментарии" "Контакты" и т.п - все ок. Шаблон дефолтный, до обновления все было нормально.


7 MadBadJack 2009-05-21 05:13:47

Сорри, в догонку. Т.е. не только сторону поменяли, но и отображаются зеркально. Было справа - верх, стало лево - низ :grrr:


8 Максим 2009-05-21 08:49:38 admin

Проверяйте html в виджетах. Скорее всего какой-то бъёт разметку шаблона.


9 MadBadJack 2009-05-21 09:48:40

Максим, а нельзя ли чуть подробней? Путь к файлу, например, и примерные ошибки? Я скажу что сделал вчера, после возникновения проблемы:

1. Отключил все виджеты, далее подключал по одному = 0

2. Перекинул папку ...maxsite/templates/default с другого сайта (там все ок) = 0

Спасибо.


10 MadBadJack 2009-05-21 09:53:33

Кстати, переключение на clouds тоже не дает ничего. Абсолютно идентично.


11 qnick 2009-05-21 17:49:52

Отличный CMS, долго искал что-то подобное.

Вопрос есть. Сначала я поставил движок в подпапку mysite.ru/blog, а потом подумал и решил, что blog.mysite.ru будет лучше смотрецца.

Файл htaccess в корне подправил, в папке /blog тоже заменил его на соответствующий, теперь блог доступен по адресу blog.mysite.ru. Но есть проблема: все ссылки в блоге (меню, "обсудить", админка и т.д.) имеют вид "blog.mysite.ru/blog/адрес". Они, конечно, работают, но выглядит это не очень. Хочется, чтобы эти ссылки имели вид "blog.mysite.ru/адрес"

Кэш сбрасывал, не помогло.


12 Максим 2009-05-21 17:52:16 admin

htaccess должен быть не для подкаталога.


13 qnick 2009-05-21 17:57:40

htacces поменял первым делом, он не для подкаталога.


14 MadBadJack 2009-05-21 19:14:28

Максим, извините, но все-таки попрошу Вас посмотреть на сайт http://inn-ter.madbadjack.com/

Возможно при визуальном "досмотре" понятней.


15 Максим 2009-05-21 19:21:23 admin

Просто в какой-то записи открыт div, который не закрыт до cut.


16 MadBadJack 2009-05-21 21:53:23

Максим, большое человеческое спасибо! Все нормализовалось!


17 Андрей 2009-05-22 10:35:14

Давно присматривался к вордпрессу, но эта системка СУПЕР спасибо разработчикам... :snake:


18 dj_maxx 2009-05-22 11:26:27

Обнаружил странный глюк. При обнаружении в URL пробела он заменяется на символ подчеркивания. Например при заходе на http://anime.underverse.su/tag/Anime новости оно ищет по тегу Anime_новости и понятное дело ничего не находит... Где-то фильтруются пробелы... но где?...


19 Zmei 2009-05-22 12:57:28

Увидел на сайте http://anime.underverse.su/ плагин облако тэгов 3D. Дело в том что у меня на сайте работает нормально пример http://zmei.name/tag/css%20xhtml - Попробуйте скачать последнюю версию http://zmei.name/page/tagcloudswf-dlja-maxsite и попробуйте поработать с ней.

Кто сталкивался с подобной проблемой опишите ее, ок?


20 Zmei 2009-05-22 13:41:46

В очередной раз протестил локально и на серваке - работает :)


21 dj_maxx 2009-05-23 05:10:39

Почему-то если брать параметры через $_GET то подчеркивание появляется, а если через $_SERVER - то пробел %)

Как следствие - баг полечился заменой

$config['uri_protocol'] = "AUTO";

на

$config['uri_protocol'] = "QUERY_STRING";

однако природа сего глюка осталась загадкой %)


22 Валерий 2009-05-23 10:10:59

Пока не сделаете подпись на почту к коментариям ваша система несильно нужна как блог. Хотя бы подписку rss на коменты сделали бы.


23 Wave 2009-05-23 17:41:05

Валерий, а посмотрите-ка хотя бы даже на этой странице подписи под заголовком. Те, что «рубрика текущей страницы», «дата», «количество просмотров». Что там следующее идёт?

И аналогичные подписи на странице комментариев гляньте.


24 Валерий 2009-05-23 19:51:54

Пардон rss на коменты есть. Уже +1. Но все же почта на много удобнее.

Хотя сделать это не так просто как кажеться на первый взгляд


25 Артём Смоленский 2009-05-24 10:58:42

Максим планируешь превратить свой блог в сервис по типу вордпресса ? Я имею виду каталог шаблонов, плагинов и т.д. Форум уже есть ;-)


26 MadBadJack 2009-05-24 17:10:42
Хотя сделать это не так просто как кажеться на первый взгляд

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


27 Anonymous 2009-05-28 14:55:49

Максим, а Вы не думали над тем, чтобы реализовать загрузку и активацию плагинов прямо из панели администрирования?

То есть без всякого ручного скачивания, разархивирования, загрузки по FTP и так далее.

В администраторском аккаунте есть каталог, который синхронизируется с Вашим сайтом, где приведены все официальные плагины с подробным описанием. А рядом находится одна кнопка "Установить", после нажатия на которую, все скачивается с сайта, распаковывается и устанавливается.

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


28 Wave 2009-05-28 16:39:05

Все официальные плагины поставляются в архиве с CMS. Т.е. их не нужно отдельно вручную скачивать, разархивировать, загружать по FTP. Достаточно установить (или обновить) CMS.


29 ламер 2009-06-02 14:09:27

несмог установить вроде все делал по инструкции , вордпрес и джумла установились..


30 ilya_leo 2009-06-09 19:32:23

Максим, наконец-то сегодня проапгрейдил свой сайт, причем с версии 0.22 сразу до 0.32. К удивлению, можно сказать, что проблем вообще не возникло. О некоторых мелочах я у себя написал, посмотрите, если время будет: http://xora.ru/page/maxsite-032

Ну и поздравляю с годиком :-)


31 ssv229 2009-06-18 11:32:11

Привет Максим, давно слежу за вашей системой))

около 2-ух лет с момента её моделирования.

Сейчас от нечего делать решил скачать, изучить...

Это замечательно, что есть такие люди как вы, спасибо вам :-):exclaim:


32 Аноним 2009-06-20 15:16:46

Первое впечатление — ужасно. Установщик отказался заливать базу сам, ручками как то не очень хочется. Успехов в разработке.


33 madexz 2009-06-26 18:24:25

установил эту версию, и обнаружил странную аномалию, в тексте статьи появляются ссылки на другие страницы блога, причем если посмотреть в код статьи (через админку) то кода ссылки там нет, как собственно и в базе нет кода ссылки (смотрел через myphpadmin).


34 Wave 2009-06-26 20:38:11

Плагин перелинковки включен?


35 nalim 2009-07-05 08:51:23

Насчет почты))) Можно же посылать без всяких mail-серверов напрямую через socks. Есть уже масса решений на PHP например в PEAR. Преимущества: это будет работать почти везде, и не придется думать о ключах мэйл сервера)


36 Барсук Ленивый 2009-07-10 00:37:44
Проанализировав код, я решил изменить алгоритм CodeIgniter и отказаться от проверки mime-типа. Вместо этого проверяется расширение файла.

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


37 Максим 2009-07-10 06:35:25 admin

Пустые слова. Конкретный пример, описание, метод есть?


38 Anonymous 2009-07-21 02:25:54
Пустые слова. Конкретный пример, описание, метод есть?

bot.php.gif и будет большое бобо старому апатчу сконфигурированному неправильно.


39 Anonymous 2009-07-21 02:34:22

не вижно долгожданной поддержки xCache, eAccelerator, APC, memcache

class cache_common<br>{<br>	var $used = false;<br>	/**<br>	* Returns value of variable<br>	*/<br>	function get ($name)<br>	{<br>		return false;<br>	}<br>	/**<br>	* Store value of variable<br>	*/<br>	function set ($name, $value, $ttl = 0)<br>	{<br>		return false;<br>	}<br>	/**<br>	* Remove variable<br>	*/<br>	function rm ($name)<br>	{<br>		return false;<br>	}<br>}<br><br>class cache_eaccelerator extends cache_common<br>{<br>	var $used = true;<br><br>	function cache_eaccelerator ()<br>	{<br>		if (!$this->is_installed())<br>		{<br>			die('Error: eAccelerator extension not installed');<br>		}<br>	}<br><br>	function get ($name)<br>	{<br>		return eaccelerator_get($name);<br>	}<br><br>	function set ($name, $value, $ttl = 0)<br>	{<br>		return eaccelerator_put($name, $value, $ttl);<br>	}<br><br>	function rm ($name)<br>	{<br>		return eaccelerator_rm($name);<br>	}<br><br>	function is_installed ()<br>	{<br>		return function_exists('eaccelerator_get');<br>	}<br>}<br><br>class cache_apc extends cache_common<br>{<br>	var $used = true;<br><br>	function cache_apc ()<br>	{<br>		if (!$this->is_installed())<br>		{<br>			die('Error: APC extension not installed');<br>		}<br>	}<br><br>	function get ($name)<br>	{<br>		return apc_fetch($name);<br>	}<br><br>	function set ($name, $value, $ttl = 0)<br>	{<br>		return apc_store($name, $value, $ttl);<br>	}<br><br>	function rm ($name)<br>	{<br>		return apc_delete($name);<br>	}<br><br>	function is_installed ()<br>	{<br>		return function_exists('apc_fetch');<br>	}<br>}

40 Anonymous 2009-07-21 02:36:54
class cache_xcache extends cache_common<br>{<br>	var $used = true;<br><br>	function cache_xcache ()<br>	{<br>		if (!$this->is_installed())<br>		{<br>			die('Error: XCache extension not installed');<br>		}<br>	}<br><br>	function get ($name)<br>	{<br>		return xcache_get($name);<br>	}<br><br>	function set ($name, $value, $ttl = 0)<br>	{<br>		return xcache_set($name, $value, $ttl);<br>	}<br><br>	function rm ($name)<br>	{<br>		return xcache_rm($name);<br>	}<br><br>	function is_installed ()<br>	{<br>		return function_exists('xcache_get');<br>	}<br>}

41 Anonymous 2009-07-21 02:41:10

define("CACHE", "none"); // "none", "APC", "eaccelerator"

switch (CACHE)<br>{<br>	case 'eaccelerator':<br>		$tr_cache = new cache_eaccelerator();<br>		break;<br><br>	case 'APC':<br>		$tr_cache = new cache_apc();<br>		break;<br>		<br>	case 'xcache':<br>		$tr_cache = new cache_xcache();<br>		break;<br><br>	default:<br>		$tr_cache = new cache_common();<br>}

42 Anonymous 2009-07-21 02:42:16

уж больно хорошо данных вес глючил пока не применил опкод кеширование


43 Anonymous 2009-07-21 02:44:37

добавил запрос ваш движок теперь поддерживает так же http://code.google.com/p/web-optimizator/


44 Максим 2009-07-21 06:45:02 admin

Ничего не понятно. Пишите на форуме, объясняйте нормально, что хотите.


45 Anonymous 2009-07-24 06:28:30

можете добавить в движок PHP акселераторы код классов выше ? xCache, eAccelerator, APC, memcache

Leave a comment!