InstantCMS 2.14.3 и обновлённый официальный сайт

1.98K

Всем привет!

Много новостей накопилось, но укладываемся в одну — будет много букв 😀

Новый официальный сайт InstantCMS

Да. Не прошло и семи лет, как мы наконец-то обновили официальный сайт до текущей версии InstantCMS. Теперь он на InstantCMS версии 2.14.3. А был на InstantCMS 1.7. Да, да, на такой древней версии, хоть и пропатченной вдоль и поперёк.

Раньше на это банально не было времени. Его и сейчас не было, но тянуть дальше было уже просто стыдно. Не без помощи участников сообщества мы написали мигратор, кстати герой, который вызвался помочь — Loadырь, за что ему большой респект! Также большое спасибо тем, кто помогал в тестировании тут и тут.

Мигратор, как вы понимаете, писался максимально быстро, и без доработок, увы, не подойдёт для того, чтобы я его выложил для миграции с InstantCMS 1.10.X. Однако, если есть желающие альтруисты, я готов создать репозиторий на гите, дабы его довели до ума. Пишите в личку.

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

Кстати про компоненты. Мы написали для этого сайта компоненты:

  • Награды;
  • Избранное;
  • Уведомления в Telegram;
  • Управление дистрибутивами InstantCMS;
  • Каталог фрилансеров;
  • Антиспам для регистраций;
  • Надстройка для блогов;
  • Надстройка для старых файлов пользователей из InstantCMS 1.X (только для чтения/удаления);
  • Управление рекламой.

Ах да, и форум написали. Ну как написали, переделали существующий форум от, опять же, Loadырь. Крайне рекомендую, как минимум, плюсануть ему в карму. Форум сильно переделан, но я думаю вполне будет совместим с предыдущими установками. После переезда этого сайта все файлы компонента «Форум», которые мы изменили, были переданы Loadырю. Вероятно, как будет у него время, будет и обновление.

Для любителей PageSpeed Insights, мы набираем на главной странице 94 для мобильных и 99 для десктопа.

ИзображениеИзображение

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

По функционалу теперь этот сайт — обычный InstantCMS 2.X, смысла перечислять, что тут нового, нет, вы и сами всё видите. Как минимум теперь адаптивный дизайн и как максимум при большом объёме данных, того же форума, постов в блогах, комментариев или личных сообщений, всё быстро и прекрасно работает. База данных здесь занимает примерно 1 гигабайт места: порядка 300 000 личных сообщений, более 350 000 постов на форуме, более 65 000 комментариев. Поэтому вопрос о том, «а сколько записей выдержит Инстант», я думаю закрыт.

Новая инфраструктура серверов проекта

Теперь в арсенале два сервера (на Debian), территориально разнесённые по странам:

  • Фронтэнд с Nginx и SMTP сервером;
  • Бэкенд, где крутятся сайты нашего проекта с базами данных.

Мы пока на PHP7.3. Но как только обновим всё, перейдём на PHP8.

Самые внимательные могли заметить, что почтовый сервер на приём у нас интегрирован с почтой Яндекс.Коннект. Теперь на отправку поднят свой SMTP. Обусловлено это тем, что Яндекс не очень любит, когда с его smtp рассылают уведомления и всякие подтверждения о регистрации. SMTP настроено по всем канонам, поэтому попадание в спам исключено, а mail-tester даёт уверенные 10 из 10.

Какие планы по официальному сайту?

Мы хотим перенести каталог дополнений из текущего поддомена на этот сайт, дабы не было неудобств с двойной авторизацией и двойными аккаунтами. Вероятней всего со временем преобразится главная страница этого сайта и конечно же теперь официальный сайт будет всё так же обновляться к новым версиям InstantCMS. К слову сказать, сайт instantcms.ru работает на… InstantCMS с самой первой версии движка. И с самой первой версии обновляется, хоть и не всегда оперативно 😉

Что нового в InstantCMS 2.14.3

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

  • Для страниц раздела "Виджеты и страницы" теперь можно указывать класс для тега body;
  • В компоненте "География" убран провайдер «ipgeobase», т.к. прекратил существование. Остался «geoiplookup». После обновления смените его в настройках;
  • Добавлено правило доступа «Время на изменение/удаление комментария» для компонента "Комментарии";
  • Оптимизирована работа личных сообщений, скорректирована вёрстка окна сообщений, добавлен звук о новом сообщении при открытой переписке;
  • Много проработано для семантической вёрстки, спасибо Олег Васильевич;
  • Теперь можно перемещать виджеты среди неактивных, что несомненно прибавило удобства;
  • Доработана вёрстка в новой админке, например теперь видны полностью длинные названия категорий;
  • Исправлена микроразметка в хлебных крошках;
  • При удалении компонентов теперь удаляются/очищаются автоматически системные таблицы CMS;
  • Для поля «Текст HTML» добавлены опции по обрезке текста в списке;
  • В окне отладки добавлена возможность сортировать по времени выполнения;
  • Дополнен вывод полей в виджете полей контента;
  • Исправлена опечатка в коде при создании новых свойств;
  • Исправлена ошибка в типах контента для полей дат, начинающихся с date_;
  • Убрана кнопка регистрации из формы логина, если регистрация отключена;
  • Исправлена ошибка и другие недочёты с полем «Файл»;
  • Добавлена возможность отключать инфо-блок на странице записи типа контента;
  • Добавлена возможность выводить инфо-блок в виджете «Поля контента»;
  • Добавлена возможность указывать фоновое изображение по умолчанию в виджете «Поля контента»;
  • Добавлена опция «Не показывать в хлебных крошках тип контента» в списке;
  • Добавлена возможность выключить просмотр списка главной страницы типа контента, оставив только категории;
  • Добавлена возможность не показывать название пункта меню, оставив только иконку;
  • Исправлены недочёты в 2FA от Goggle;
  • Добавлена возможность выводить логотип сайта в виджете меню;
  • Если редактор комментариев/стен/лички указан как Textarea, то при сохранении вырезаются все HTML теги;
  • Наборы в карте сайта;
  • Тег canonical там, где его не хватало;
  • Добавлена опция «Автоматически выбирать первый контакт из списка» для окна личных сообщений;
  • В массовой рассылке писем в админке в опции «Как отправлять сообщение» добавлен пункт «Как Email», т.е. теперь можно делать рассылку напрямую на email пользователей;
  • В компонент «Редиректы» добавлена опция «Правила для редиректа и подмены адресов», подробнее здесь;
  • Добавлена опция ограничения количества друзей на главной профиля пользователя;
  • Добавлена опция вывода списка групп, к которым принадлежит пользователь;
  • Обновлён механизм переводов из групп в группы;
  • В виджете «Кто онлайн» добавлена опция «Не выводить из групп»;
  • Для администраторов на сайте доступен фильтр по ip пользователя;
  • Для разработчиков добавлена возможность менять базу данных, префикс и набор символов на лету, см. database.php;
  • Для поля "Строковое поле" добавлена возможность задавать маску ввода, используется библиотека Inputmask;
  • Для поля «Текст» добавлена опция «Вырезать все HTML теги при сохранении». Переносы строк при выводе преобразуются в тег br;
  • В настройках шаблона Modern добавлены опции для фавиконок. Можно выбрать единую, так и указать набор тегов, которые будут помещены внутри тега head всех страниц;
  • Для виджета «HTML блок» добавлены опции «JavaScript код» и «Относительные пути к JavaScript/CSS файлам»;
  • Для виджета «Элементы шаблона» можно указывать файл логотипа, отличный, от указанного в настройках шаблона;
  • Множество рефакторинга кода;
  • Улучшенная поддержка PHP8, известных проблем совместимости теперь нет;
  • Обновлена Jquery до текущей версии;
  • JqueryScroll обновлена до текущей версии;
  • Обновлена библиотека SCSSPHP до актуальной версии;
  • Обновлена библиотека Geshi до актуальной версии;
  • Обновлена библиотека PHPMailer до актуальной версии;
  • Редактор Tinymce обновлён до актуальной версии;
  • Большое количество мелких правок вёрстки шаблона Modern;
  • И, наконец, множество других мелких правок, о которых расскажет diff.

Однако, кроме этого, в релиз вошли и изменения по безопасности.

Участник нашего сообщества Absolute134 обратил внимание на недостатки в части безопасности, на которые мы, конечно же, отреагировали. Повода для паники нет, но обновиться стоит.

  • Исправлена проблема CWE-601;
  • Исправлена проблема CWE-113;
  • Устранены известные XSS.

Дальнейшие планы

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

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

В общем, всё как обычно, сделать хочется много и еще вчера, а реальность немного другая 😉

Как установить обновление InstantCMS

Важно! Перед установкой обновления убедитесь, что сторонние дополнения поддерживают новую версию InstantCMS! В противном случае вы рискуете окирпичить свой сайт.

Перед началом обновления обязательно сделайте резервную копию своего сайта и дамп базы данных. Обновляться лучше на копии сайта, поднятом локально на ПК или иным подобным способом. Мы не несем никакой ответственности за любые потери данных, произошедшие в результате неправильных действий при обновлении.

  • Отключите кеширование в настройках сайта;
  • Отключите объединение js и css в настройках сайта;
  • Если вы используете свой шаблон и в нем есть файлы, присутствующие в пакете обновления, то обновите их;
  • При возникновении «белого экрана» категорически читать здесь;
  • Для тех, у кого свой шаблон у нас есть статья как быть, если в обновлении CMS есть изменения в шаблоне, рекомендуем к прочтению.

Если в вашем шаблоне присутствуют JavaScript файлы аналогичные пути /templates/default/js/ и названиям в дефолтном шаблоне, замените/смержите их из пакета обновления. Не забывайте о сбросе кэша браузера абстрактным счетчиком.

Если вы используете шаблон Modern или дочерний от него, после обновления пересохраните (вместе с компиляцией) настройки шаблона в админке.

Автоматическая установка

  1. Включите режим отладки в админке.
  2. Воспользуйтесь функцией «Проверить обновления» в панели управления InstantCMS 2.
  3. Система сама обнаружит обновление 2.14.3, предложит скачать его и установить.
  4. Для установки потребуется указать реквизиты для доступа по FTP.
  5. Проверьте, что версия InstantCMS изменилась в админке.
  6. Очистите кэш браузера, увеличьте на единицу абстрактный счётчик в настройках сайта.
  7. Обновление завершено. Если возникли ошибки при установке пакета, то обновление прошло некорректно, воспользуйтесь ручной установкой.

Ручная установка

Убедитесь, что вы используете InstantCMS 2.14.2 (версию можно посмотреть внизу любой страницы в админке или на главной странице админки в соответствующем блоке).

  1. Включите режим отладки в админке;
  2. Загрузите архив с обновлением.
  3. Перейдите в панель управления сайтом;
  4. Перейдите в раздел компоненты;
  5. Нажмите установить пакет дополнения;
  6. Очистите кеш браузера;
  7. Сверните окно браузера;
  8. Все содержимое папки package из архива обновления, скаченного в п.1 загрузите в корень вашего сайта, заменяя файлы;
  9. Вернитесь в свернутое в п. 7 окно браузера, нажмите F5 на клавиатуре и выберите архив, который вы скачали в п.2;
  10. На странице «Информация о пакете» нажмите установить;
  11. На странице ввода реквизитов ftp поставьте чекбокс «Пропустить этот шаг» и нажмите «Установить»;
  12. Выключить режим отладки в админке;
  13. Обновление завершено. Если при установке пакета возникли ошибки, то обновление установилось некорректно по какой-то причине. В этом случае необходимо смотреть логи PHP на сервере.

Заключение

Как обычно, всем спасибо за сообщения об ошибках, за готовый код, в этом релизе закрыто 19 тикетов вместе с пулреквестами! Отдельное спасибо за донаты! Всё это здорово помогает делать InstantCMS лучше.

Спасибо, что выбираете InstantCMS!

Поддержите проект

Вы можете стать официальным спонсором или оказать другую поддержку. Вы также здорово поможете, если поставите звезду на GitHub.

0
Реклама Реклама #
+2
lesterkey lesterkey 14 дней назад #

😃 круто!

+4
Алексей Т Алексей Т 14 дней назад #

Спасибо!

+2
Rainbow Rainbow 14 дней назад #

Неожиданно)

Очень большая работа. Спасибо.

+6
Викторыч Викторыч 14 дней назад #

Предновогоднее предвкушение было сильным, но «Новый год» наступил чуток пораньше! Впрочем, я не огорчился. )) Спасибо за мощное обновление! *и за новый TinyMCE! )

+4
Zau4man Zau4man 14 дней назад #

Отличные новости. Спасибо за релиз. Сделано многое.

+3
buk buk 14 дней назад #

Отлично, спасибо!👍💪

+12
Make Make 14 дней назад #

Давно хотел использовать эту картинку, лучше места и события не придумать😀

Изображение

+4
Викторыч Викторыч 14 дней назад #

На back-end смотрит! ) Это он еще front-end не видел! )))

+1
Scythian Scythian 14 дней назад #

Огромное спасибо! Это действительно очень приятные новости!

+1
CEH9I CEH9I 14 дней назад #

Спасибо за обновление)) вопрос насчёт написанных компонентов, они будут доступны пользователям? Или это компоненты только для официального сайта?)

+4
Fuze Fuze 14 дней назад #

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

0
CEH9I CEH9I 14 дней назад #

Не могу найти, не подскажете ссылку?

0
CEH9I CEH9I 14 дней назад #

Ещё есть хороший виджет, он доступен?)

Изображение

0
Fuze Fuze 14 дней назад #

Ещё есть хороший виджет, он доступен

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

Всё, на что будет время, я выложу. Когда, не знаю, как будет время.

0
CEH9I CEH9I 14 дней назад #

Меня больше интересует виджет «Проявляют активность » и «Сколько нас».

Всё, на что будет время, я выложу. Когда, не знаю, как будет время

Я так понял их пока нет в разделе «Дополнения»?

0
Fuze Fuze 14 дней назад #

Меня больше интересует виджет «Проявляют активность » и «Сколько нас».

Это один виджет. Я не видел подобного в каталоге дополнений.

Остальные виджеты, от других авторов, я встречал в каталоге дополнений, воспользуйтесь поиском.

+1
CEH9I CEH9I 14 дней назад #

Награды;

Уведомления в Telegram;

Управление дистрибутивами InstantCMS;

Каталог фрилансеров;

Антиспам для регистраций;

Надстройка для блогов;

Надстройка для старых файлов пользователей из InstantCMS 1.X (только для чтения/удаления);

Управление рекламой.

 

Я про эти имел виду. Если вы тоже то будем ждать появления в дополнениях.

0
ВотьТеНа ВотьТеНа 13 дней назад #

 

Насчёт написанных компонентов, они будут доступны пользователям? Или это компоненты только для официального сайта?

Веб-разработчики, дизайнеры и верстальщики 99,9% против добавления функционала (компонентов) в систему. 

За обновление спасибо!

+3
dChirkis dChirkis 14 дней назад #

Дай Бог тебе здоровья добрый человек )

+1
SpideR SpideR 14 дней назад #

Прошло немного времени, а старый офф. сайт уже не вспоминается.

Всех с успешным обновлением. 👍

0
Михаил Михаил 14 дней назад #

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

Спасибо за обнову!!!

0
noname noname 14 дней назад #

Проблема еще в: комментарии не участвуют в поиске, сообщения форума участвуют, но форум постоянно нужно обновлять.

0
Remi Remi 14 дней назад #

Здравствуйте! Спасибо за обновление!!!

Полез я на демо сайт, авторизовался -> Типы контента -> Объявления -> Поля -> Цена -> Настройки поля -> Фильтр по диапазону -> и тут активировал пункт меню -> Выбор диапазона ползунком. На самом сайте появился ползунок изменяя выводит на кнопке количество объявлений, но не изменяет цену. Помнится раньше изменялась и цена, дабы видеть в каком диапазоне нашлись объявления. 

0
wantprikol wantprikol 14 дней назад #

Спасибо за обновление!!!

При включении отладчика показывает 2 ошибки:

1. Notice: Undefined index: author_ip in /var/www/www-root/data/www/wantprikol.ru/system/controllers/comments/model.php on line 334

Изображение

2. В админке — Настройки

Notice: Undefined index: list_on in /var/www/www-root/data/www/wantprikol.ru/system/controllers/content/hooks/frontpage_types.php on line 13
Изображение

 

0
Fuze Fuze 13 дней назад #

При включении отладчика показывает 2 ошибки:

С этим обновлением это не связано. Ищите проблему в предыдущих, некорректно установленных, обновлениях.

0
Юран Юран 12 дней назад #

Такая же проблема:( Согласен что не связано с текущим обновлением… Чистую систему устанавливал — ничего такого нет. Все файлы перезалил с релиза — проблема осталась… Что может быть — база данных… еще что то? Гуру — подскажите пожалуйста в каком направлении копать? 

0
wantprikol wantprikol 12 дней назад #

Я уже полностью заменил все файлы на новые. Пробовал отключать все компоненты, если отключить компонент комментарии то 1 ошибка пропадает  Изображение

0
Fuze Fuze 12 дней назад #

Вы либо пропустили предыдущее обновление, либо в прошлом обновлении не устанавливали сам пакет обновления через админку.

0
Pawell Pawell 14 дней назад #

Здравствуйте. Спасибо за очередное обновление.

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

0
Pawell Pawell 14 дней назад #

Сорри. С файлами шаблона накосячил. Заменил — всё восстановилось. Ещё раз огромное спасибо за труды.

0
Димон Димон 13 дней назад #

Изображение

Установлена чистая версия сайта

 

Изображение

-1
Fuze Fuze 13 дней назад #

Очень информативно

+1
Нифигаccе о-го-гошеньки Нифигаccе о-го-гошеньки 13 дней назад #

Димон, наверное, испугался этих привидений. Я тоже сразу не понял, что за такое. А потом показалось, что с привидениями — это виджеты, которые установлены на других страницах. 

0
Димон Димон 13 дней назад #

это все конечно хорошо, все пользовательские страницы улетели в далекие края

0
Fuze Fuze 13 дней назад #

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

Изображение

0
Capitan Capitan 13 дней назад #

Обновился. Полет нормальный

0
Викторыч Викторыч 13 дней назад #

В предыдущей версии, на Modern, выводил на главной странице два списка — посты и статьи. В 2.14.3. делаю так же, но… если отметить хотя бы один чекбокс в настройках полей, то на главной отображается только одна запись (хотя постов несколько). 

Изображение

Изображение

Если не отмечать ничего — выводятся все посты, но без плюшек, которые в настройках полей.

Изображение

Проверил на двух тестовых сайтах (Open Server, php 7.4) Установка чистая, только два дополнения накатил: Скрытый текст и Поле навигации. Пока не проверял на количестве постов, если их будет 10-15 — будут все отображаться, или нет. Пункт меню «Новости» я убирал во всех случаях, и на 2.14.2. и здесь, мне он не нужен. Как победить этот затык в отображении списка постов? 

Никак не приживается поле навигации. В 2.14.2. дополнение работало, сейчас — нет. Проверено так же на двух тестовых сайтах.

0
Викторыч Викторыч 13 дней назад #

p.s. Это только в настройках списка постов. Список статей выводится корректно.

0
Викторыч Викторыч 12 дней назад #

Что-то в том виджете списка постов не так было… Скопировал виджет списка статей, переделал под посты — полет нормальный.

0
buster777 buster777 13 дней назад #

Здравствуйте, спасибо за обновление. Обновился на локалке, потестил, вроде бы всё нормально. Но заметил, что файл brands.svg (\templates\modern\images\icons\brands.svg) сильно похудел. Я использовал его для вывода иконок соц.сетей. После обновления  большая часть иконок из файла пропала, соответственно на сайте тоже не выводится. В принципе проблему решил заменой этого файла из предыдущего релиза. Но возник вопрос если этот файл порезали, может это неспроста?

0
AtlantisWeb AtlantisWeb 13 дней назад #

Спасибо, набор изменений порадовал.

0
CEH9I CEH9I 12 дней назад #

   После обновление в массовой рассылке не тот редактор который по умолчанию!Изображение

0
Fuze Fuze 12 дней назад #

После обновление в массовой рассылке не тот редактор который по умолчанию!

Да

0
CEH9I CEH9I 12 дней назад #

А как сделать нужный редактор?)

0
noname noname 12 дней назад #

Настройки — Интерфейс — HTML редактор по умолчанию

0
CEH9I CEH9I 12 дней назад #

Как бы не работает!!

 

Изображение

+1
Zau4man Zau4man 12 дней назад #

Откройте файл github.com/instantsoft/icms2/blob/0695ea57e195b7a61a290dd7fa3e6e44e9483962/system/controllers/messages/backend/forms/form_pmailing.php#L22

и удалите в нем

  1. 'options' => ['editor' => 'ace'],

чтобы стало

  1. new fieldHtml('message_text', array(
  2. 'title' => LANG_MESSAGE,
  3. 'rules' => array(
  4. array('required')
  5. )
  6. )),

Это вернет редактор по умолчанию.

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

0
CEH9I CEH9I 11 дней назад #

Заменил на 

  1. 'options' => ['editor' => 'tinymce'],

 

и мне достаточно)) Спасибо что подсказали где копать))

 

0
KoRn KoRn 9 дней назад #

Спасибо за обновление.

На чистой системе захожу в настройки слайдера контента,  выбираю тип контента (у данного типа контента есть поле изображение), хочу выбрать поле «изображение» но список не выпадает, грубо говоря пункт не активен. и таких пунктов несколько, в том числе поле краткого описания,, категории. То есть не могу выбрать нужное поле для вывода в настройках виджета. Наблюдается ли у Вас подобное, или мне еще раз попробовать на чистой системе?

0
KoRn KoRn 9 дней назад #

Отбой, активировал второй тип контента и все заработало, не знаю что было.

+3
Dublic Dublic 6 дней назад #

Спасибо, что развиваете движок, не останавливайтесь.

Российский бесплатный продукт, функционалом которого действительно можно гордиться 👍

Красота и крутотень, так держать 😊👍

0
Эндрю Ua Эндрю Ua 1 день назад #

Будьте любезны, исправьте Баг с «Привязываемые виджеты»

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

ЛИБО:
С prnt.sc/1x8vyyi  Правая колонка pos_9 добавьте где то 3 виджета в Привязываемые виджеты и после удалите верхний из списка в Привязываемые виджеты куда вы их добавили — Так же все исчезнут. 

0
Zau4man Zau4man 1 день назад #

Баг ли? Это один виджет, который просто несколько раз перепривязан.

Создайте тему на форуме, в комментах потеряется.

Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.