Современная, быстрая и удобная система управления сайтом

MaxSite CMS 103

Версии (релизы)Комментарии: 12Просмотров: 8070

У нас теперь одна ветка разработки. Ветка dev завершилась на 102.2, если вы на ней, то увидите уведомление в Консоли. Если вы использовали dev-установщик, то загрузите новый — он теперь только на master. Кроме того, он поправлен для новых версий PHP (старый работать будет, но с php-предупреждениями).

Теперь кратко об основных изменениях.

В Консоли выводится предупреждение об устаревшей версии PHP. Рекомендуемая 7.3. На текущий момент минимальная рабочая версия PHP 5.4. К концу года будет 7.0 7.1. То есть мы полностью откажемся от старых версий PHP.

Также в Консоли я добавил вывод немодерированных комментариев.

Исправлены замеченные ошибки, включая работу с MySQL 5.7

В плагине any_file можно использовать парсер Simple.

Сделал поиск по сайту быстрее. Проблема была связана с подсветкой найденных фраз. Когда текста много его обработка приводила к заметному притормаживанию. Сейчас алгоритм принудительно отсекает первые 500 слов. Это позволило очень сильно ускорить работу поиска.

В юнитах (units) изменил порядок: вначале выполняется команда @fromfile (включение файла), а уже потом происходит обработка php-кода по инструкции @USE_PHP@.

В Page_out (включая last-pages.php) включена поддержка exclude_cat_id с помощью которой можно исключить рубрики из вывода.

В Page_out можно задать php-функцию в виде [func@my_f|X|Y|Z]. То есть функция будет принимать на входе данные записи и до 3-х аргументов. Можно использовать для случаев, когда требуется оформить какой-то специфический вывод.

С помощью set/get переменной show-info-top можно полностью отключить вывод info-top записи. Это для случаев, когда нужно управлять выводом заголовка из произвольных блоков шаблона.

Сделал кнопку сохранения файла на странице Файлы всегда видимой. Раньше она появлялась только когда была какая-то правка текста. Многие пугались отсутствию кнопки, поэтому переделал.

В type-файлах добавил и поправил некоторые css-классы.

Улучшил работу type_foreach-файлов. Добавил новые type_foreach-файлы для full-вывода (do-full, end-full).

Доработана функция mso_add_file(). Теперь она поддерживает lazy-загрузку файла (то есть в конце BODY), а также может автоматически сформировать полный путь на основе __DIR__. Это позволяет без переписывания пути переносить файлы в разные каталоги шаблона. Ну и кроме этого для js-файлов можно указывать дополнительные атрибуты SCRIPT (например async).

Улучшил вывод отладочной функции pr() для нескалярных переменных. При смешанном содержимом будет корректный вывод.

В title страниц теперь добавляется номер страницы пагинации. Поменять формат вывода можно с помощью опции в Основных настройках - Meta-поля - Номер страницы в title.

Полностью убрал meta keywords, поскольку они уже давно потеряли актуальность. Но при этом оставил их вывод через mso_head_meta() для совместимости.

В шаблоне Default добавил параметр swap для загрузки google-шрифтов. Это новая возможность, решающая проблему «мигания» шрифтов на странице.

Новый вариант создания языкового перевода. Главная сложность языкового перевода — это то, что не все фразы можно «отловить» по исходному php-коду. У нас часть фраз формируется с помощью ini-файлов, которые очень сложно распарсить. Поэтому я придумал другой вариант. Вначале происходит сбор всех фраз через реальный сайт. Фразы собираются в отдельном текстовом файле автоматически. После сбора, файл обрабатывается тоже автоматом и на выходе получается готовый массив фраз для перевода (mso-dictionary.php). На его основе делается свой словарь.

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

Сейчас, из-за того, что у нас все плагины без языкового перевода, в общий «котёл» приходится кидать и плагины, и фразы самой MaxSite CMS. Но вообще в планах я думаю, выкладывать готовый mso-dictionary.php только самой системы, а перевод плагинов перенести в каталоги плагинов (в bbcode добавил языковой перевод в качестве образца), как это изначально и задумывалось. Работы много и я бы не отказался от помощи. В первую очередь нужен нормальный английский и украинский перевод. Потому что когда будет перевод, можно будет подумать и над локализацией инсталляции MaxSite CMS (чтобы сразу можно было указать язык).

Ещё пара анонсов.

Первый. На сайте решил завести отдельный раздел «Каталог студий и фрилансеров», которые работают с MaxSite CMS.

Второй. Вы наверное уже читали о моём шаблоне MF и в честь приближающейся годовщины MaxSite CMS я решил придумать 11% скидку. Она действует только до 3 июня 2019, поэтому если вы подумываете о многофункциональном шаблоне, самое время приобрести. Тем более, что в подарок вы можете выбрать ещё один любой премиум-шаблон. Так что получается достаточно выгодное предложение. MF сильно развивается, там уже много «вкусностей», поэтому не упускайте такой шанс. :-)

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

1Ярик25-05-2019 20:48

Наконец-то! Для меня это очень удачное обновление, очень скоро применю его, чтоб уйти с проклятого юкоза. Восхищён тобой и твоим трудом.

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

2Евгений МирошниченкоСайт27-05-2019 12:25

Доброго времени суток, Максим. Благодарю, за Ваши труды. Занимался переводом некоторых плагинов как-то и действительно в файле перевода каша выходила. Готов помочь с переводом плагинов, которые есть в стандартной поставке с CMS на английский. Как бы организовать трудовой процесс и присылать Вам плагины с переводом?

3Максим27-05-2019 14:14

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

4Евгений МирошниченкоСайт27-05-2019 14:19

Хорошо. По срокам загадывать не буду, но и затягивать выполнение перевода тоже. Ориентировочно до конца июня все сделаю и все скину Вам на почту.

5Евгений27-05-2019 17:00

спасибо,

очепятка - исправь lats-pages.php

7Иван Сиренко07-07-2019 20:56

Благодарю за обновление! Работает!

Такой вопрос: для того чтобы сайт был с https:// в файле .htaccess надо что-нибудь прописывать, или так "подхватит"???

9vovansСайт06-11-2019 09:53

Сейчас написал очередную статью:

https://radio.zenway.ru/page/eagle-schematic-simulation

и вот что напрягает. Вставлять картинки. Загружать легко. Наделал скриншотов, перетащил их в нужное поле и готово. А вот вставлять их в статью... Мне нужны их URL. Чтобы их получить, нужно нажать на кнопку, в появившемся окне скопировать УРЛ, закрыть окно, прокрутить окно вверх, нажать пиктограмму с картинкой... Если бы УРЛ просто копировался сразу при нажатии кнопки, было бы намного проще. а если бы он вставлялся в место, где сейчас курсор, с появлением соответствующего окна для заполнения описания, было бы вообще прекрасно! Такая простая операция очень сильно отвлекает от текста :( Пока всё сделаешь... А картинок и 10, и 20 бывает.

10Максим06-11-2019 10:34

Если это картинки, то есть готовые коды img и image. Это значительно проще, чем вручную расставлять html-тэги.

11Дмитрий19-01-2020 09:56

"Полностью убрал meta keywords, поскольку они уже давно потеряли актуальность. Но при этом оставил их вывод через mso_head_meta()для совместимости."

Как keywords можно вывести в админке для статей теперь?

Может оставить keywords - кому надо заполнит - не надо - вообще не выводить его.

12Максим19-01-2020 10:09

Кому нужно, пусть сам делает любые метаполя в своём шаблоне.

[Ключевые слова (keywords)]
options_key = keywords
options_type = general
type = textarea
rows = 2
description = "Введите ключевые слова сайта. Эти слова будут использованы в meta keywords."
default = ""
Оставьте свой комментарий!

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

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

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