MaxSite CMS 101

Просмотров: 1073Комментарии: 21
MaxSite CMSВерсии (релизы)

Версия, где было много изменения и доработок. Начну, наверное, из последних. MaxSite CMS теперь поддерживает PHP 7.1 и 7.2. Строго говоря, проблема была не в самой системе, а в CodeIgniter, который содержит устаревшие функции шифрования, и которые были «выпилены» из последних версий PHP. Просто так их заменить не получится, поэтому я решил проблему без изменений самого CodeIgniter — его шифрование больше не используется. Вместо этого у нас теперь своя функция, основанная на php-библиотеке Open SSL, что подходит под все PHP-версии с 5.3.

Само по себе CodeIgniter-шифрование у нас используется только для кук, поэтому оно в общем-то не критично. Также есть использование этой же библиотеки в плагине maxsite_auth, но поскольку его почти не используют, то я склонен вообще его убрать из системы — переделывать будет дороже.

Из-за того, что шифрование кук поменялось, то после обновления MaxSite CMS, произойдёт разлогиневание всех пользователей. Сами пароли или база данных не меняются. Всё должно работать без каких-либо изменений с вашей стороны.

Кроме этого я поправил код системы, чтобы обеспечить совместимость с PHP 7.1/7.2 и последними версиями MySQL и MariaDB 10. Проверить все комбинации между версиями пока сложно, поэтому, если вдруг у вас выскочила ошибка, то сообщите о ней.

Также для пользователей PHP 7.x нужно будет обновить автоустановщик MaxSite CMS. Там будет выскакивать сообщение «Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP», которое не сказывается на его работе. Я обновил библиотеку PclZip под это дело.

Если вы обновляете версию PHP на сервере, то в некоторых случаях возможно потребуется полный сброс кэша и очистить куки сайта в браузере.

Мы будем переходить на 7-ю версию PHP. Это не значит, что я введу какие-то запреты на использование PHP 5.x (сейчас минимальная версия 5.3). Здесь вопрос скорее в плоскости будущих перспектив. На текущий момент я бы рекомендовал PHP 7.0, которая сама по себе даст прирост скорости работы сайта при уменьшенном ресурсопотреблении. Где-то через полгода рекомендованная версия будет 7.1 или 7.2 (сейчас уже вышла 7.3), чтобы к началу 2020 года версии 5.x официально больше не поддерживать. Это общемировая тенденция по переходу к минимальной PHP 7.1.

Если у нас будут всплывать ошибки из-за новых версий PHP/MySQL, то я готов выпускать обновления MaxSite CMS чаще, чтобы держать последнюю версию в актуальном состоянии.

Теперь кратко по другим изменениям.

- В админке я добавил отдельный вариант пагинации, который не зависит от настроек плагина.

- В Default-шаблоне появился css-профиль background-none.css, который отключает фоновую картинку сайта.

- Файл style.css теперь подключается первым. Иногда это имеет критическое значение.

- Дефолтную граватарку можно разместить в каталоге шаблона как assets/images/gravatar-default.png.

- Некоторые правки по плагинам range_url, shjs, last_pages, sape, tabs, lightbox, bbcode, parser_simple.

При сбросе кэша в Консоли теперь удаляются пустые каталоги в uploads/_pages/. То есть, если у записи не было связанных файлов, то пустой каталог удаляется как ненужный.

Также в Консоли немного поправил вывод статистки рубрик и исправил недочеты.

Из «внутренних» изменений: дальнейшая работа с Page_out, а также юнитами главной. Там появились новые возможности.

Ещё одно важное изменение: при 404 типе данных, если есть type-файл в каталоге шаблона, то ему присваивается полноценный тип данных. Раньше приходилось получать первый сегмент URL, теперь такие вещи можно сделать обычной «is_type('тип')».

Добавлено несколько новых type_foreach-файлов, а также были изменения по type-файлами, чтобы добавить новые возможности для вебмастеров.

Здесь же отмечу, что теперь автоматически прописывается css-класс при разных info-top-файлах по шаблону «mso-tf-ФАЙЛ». Это позволяет с помощью CSS кастомизировать дизайн без изменения самих файлов.

В функции mso_explode() можно использовать диапазон чисел, что позволяет во многих опциях указывать начальное и конечное число. Скажем, раньше пришлось бы писать так (например номера рубрик): «1,2,3,4,5», теперь можно проще «1..5».

У записи появилось метаполе «Показывать блок "Ещё записи по теме"».

В поле Быстрой загрузки появился новый чекбокс, отметив который, можно загрузить файлы изображений без обработки («как есть»).

Формально такая возможность всегда была, просто приходилось выбирать пункты из опций, сейчас же это простой клик. К тому же загрузка будет немного быстрей, поскольку сразу «отсекается» обработка файлов.

Ещё одно важное изменения, которое удалось-таки реализовать: теперь можно указывать короткий адрес к каталогу записи, где хранятся файлы. Для этого используется короткий код [ pi ] или [ page_images ] (без пробелов).

В текстовом редакторе добавлен пункт «Заменить адреса на page_images», который автоматом сделает все нужные замены. Раньше адреса картинок были полными:

[img]http://site/uploads/_pages/123/image.jpg[/img]

Теперь можно сократить:

[img][ pi ]image.jpg[/img]

или

[img][ page_images ]image.jpg[/img]

Также доработана логика поля «Изображение записи». Теперь оно формируется без адреса сайта: в этом случае адрес будет добавлен автоматически. Кроме этого, введено «равенство» протоколов http и https. При смене адреса сайта (включая протокол) полные адреса картинок приходилось менять. Теперь будет работать автоматом. Правда старые записи, где указан полный адрес всё также придётся править. Тут уж ничего не поделаешь. (Хотя в Thumb добавлена возможность перехватить адрес и заменить на новый.)

В функции «mso_section_to_array()» (для секционных опций) я внес небольшую правку, чтобы получить возможность создавать сложные варианты задания опций. Мне она пригодилась в шаблоне MF для задания произвольных колонок подвала. Возможность, действительно, очень перспективная, поскольку позволит сильно упростить работу с блоками, где нужно совмещать множество опций и html-код для вывода (это вообще головная боль любого разработчика...).

Уж коли я затронул шаблон MF, то сделаю анонс и здесь. Этот шаблон пока в процессе разработки, но на него объявлен предзаказ до 1 январа 2019 года по льготной цене. Шаблон premium-класса, но главная его особенность в том, что он будет содержать в себе множество готовых блоков под разную задачу. Изначально будет один дизайн, после отладки я предложу другие варианты. Поскольку MF будет развиваться, то каждый его покупатель получает бесплатное обновление на 1 год.

Кроме того, на MF я буду отрабатывать новые возможности. Например будет возможность редактировать текст записи прямо на странице этой же записи вне админки... Так что пока ещё есть возможность купить MF по хорошей цене. :-)

Комментариев: 21 RSS

1Валерий20-12-2018 20:11

Максим

А что значит?..

- В админке я добавил отдельный вариант пагинации, который не зависит от настроек плагина.

Что за отдельный вариант?

Пагинация страниц комментариев будет реализована в движке без применения плагина?

Плагин "Comments" Ильи Земского не работает как надо, если отключить комментирование к статье, то и все написанные комментарии перестают отображаться, да и много чего там не доработано.

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

2Максим20-12-2018 20:16

Добавил картинку, поясняющую пагинацию в админке.

>> Пагинация страниц комментариев будет реализована в движке без применения плагина?

Нет, не будет. Не вижу в ней смысла. Пусть будут сторонние плагины.

3Goot21-12-2018 04:44

Будем тестировать. Движок мне понравился.

4Илья ЗемсковСайт21-12-2018 07:58

Отличное и важное обновление! Благодарю!

Плагин "Comments" Ильи Земского не работает как надо, если отключить комментирование к статье, то и все написанные комментарии перестают отображаться, да и много чего там не доработано.

Максиму то какое до этого дело? :-) Вы мне написали про проблему, я вас услышал. Как появится время - разберусь.

5Иван22-12-2018 10:29

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

Было бы очень здорово, если бы кто-то решился провести тестирование движка в плане функциональных возможностей, заложенных СЕО возможностей, нагрузки на хостинг и т.д. в сравнении с наиболее популярными CMS.

6Максим22-12-2018 10:48

В смысле «с нуля»? Главное отличие — это только новые шаблоны из-за потери совместимости. Мы отрубили старые «хвосты», которые тормозили развитие системы. В остальном - это только движение вперёд.

7Иван22-12-2018 13:37

В смысле «с нуля»?
Согласен. Я не корректно выразился. В старой версии для своих каких-то потребностей не предоставляемых из коробки все нужно было реализовывать в шаблоне. В новой версии появилось много инструментов все это предоставляющее изначально. Но для того чтобы их грамотно использовать надо потратить время на изучение. И это никак не минус. Как говорится, без труда не вытащиш рыбку из пруда. :)

8Vitaliy25-12-2018 15:33

Интересное обновление!

Макс, я уже задавал в прошлом году вопрос про письма с сервера. Не отправляет движок их почему-то... Как можно отследить, где именно проблема? Смотрю в логах ошибок своего ВПС - ничего про это не отмечается. Может быть права какие-то надо выставлять специфические?

10Вероника30-12-2018 16:00

Добрый вечер, Максим. С наступающим Вас 2019 годом! Новых Вам возможностей, удачных обстоятельств, сил, энергии, здоровья и процветания Вам, Вашей семье и Вашему проекту! Большое спасибо за новую версию :)

У меня пока без затыков не обходится. Обновила свой сайт до 101 версии, всё по инструкции. Одна проблема на данный момент: не могу войти в админку (отвечает, что неверный логин или пароль). Что можно в этой ситуации сделать? Где изменить?

11Максим30-12-2018 19:50

Спасибо, Вероника! :)

Данные базы не менялись, поэтому проверьте что вы логинетесь на том же адресе (с/без www). Как вариант попробуйте другой браузер. Может куки сайта сбросить.

12Вероника30-12-2018 21:00

Благодарю Вас за оперативный ответ, Максим. Логинюсь на том же адресе, куки сбросила, перепробовала 4 браузера, ни в какую меня не признаёт. Как ещё можно поколдовать? Если можно.

14Вероника30-12-2018 21:34

До этого версия 100 была. Вот на счёт секретной фразы вообще не помню. При обновлении я её не меняла, а какая сама фраза была вообще не помню и найти в записях никак не могу.

15Вероника30-12-2018 21:47

Ура, с фразой секретной разобралась, в админку вошла!

Появилась другая проблема: в админ-панели в разделе "Все записи" вот такое вот пишет:

A PHP Error was encountered

Severity: Warning

Message: require_once(/home/host1438682/sociopraktikum.ru/htdocs/www/application/maxsite/plugins/plugins\pagination\index.php) [function.require-once]: failed to open stream: No such file or directory

Filename: admin/common.php

Line Number: 210

Fatal error: require_once() [function.require]: Failed opening required '/home/host1438682/sociopraktikum.ru/htdocs/www/application/maxsite/plugins/plugins\pagination\index.php' (include_path='.:/usr/local/php/php-5.3/lib/php') in /home/host1438682/sociopraktikum.ru/htdocs/www/application/maxsite/admin/common.php on line 210

Что-то опять нахимичила похоже. Максим, с этим что-нибудь можно сделать?

16Максим30-12-2018 21:53

Секретная фраза задается в application/maxsite/mso_config.php Если она там прописана, то ничего менять не нужно. Если нет, то используется как адрес сайта.

17Максим30-12-2018 21:55

С ошибкой — обновитесь на последнюю dev-версию. Эту ошибку пару часов назад я пофиксил.

18Вероника30-12-2018 22:22

Максим, огромная Вам благодарность за помощь и поддержку! Последняя dev-версия - это значит опять по новой переобновиться? Я ещё раз скачала последнюю версию, обновила, но в разделе "Все записи" по-прежнему ошибку выдаёт. Или что-то другое нужно было сделать?

19Максим30-12-2018 22:43

Нужна именно dev-версия. Можно через автообновление этой версии, либо вручную с гитхаба. Ссылка есть вверху.

20Вероника30-12-2018 23:46

Что-то dev-версия у меня ничего не изменила, по-прежнему ошибку выдаёт. Максим, может быть, при dev-версии нужно ещё что-то делать? И возник вопрос: а три файла index.php, .gitignore и README.md заменять надо или нет? И если залить файлы dev-установщика, то тоже просто в адресную строку браузера ввести или как-то ещё?

P.S.: благодарю за терпение и поддержку)

21Максим31-12-2018 01:33

Из dev-версии нужно заменить только файл аpplication/maxsite/admin/common.php Остальное не обращайте внимания. Ошибка не критическая, просто так совпало с вашей версией PHP.

Оставьте свой комментарий!

Комментарий будет опубликован после проверки

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

(обязательно)

О проекте

MaxSite CMS предназначена для создания сайтов любой сложности. Система отлично подходит обычным пользователям, вебмастерам, фрилансерам и вебстудиям.