Вышла OkayCMS 2.2.0!
Почти год мы работали над улучшением OkayCMS. «Куда еще лучше?» – спроосите вы, а вот мы нашли. Технологии все время развиваются, и мы не хотим отставать. Наша цель – вести свою систему к простоте и функциональности, своевременно удовлетворять запросы пользователей. Поэтому обновление принесло в OkayCMS новые полезные штуки и унесло неиспользуемый функционал и какие-то недочеты, которые в том числе и вы нам помогали искать. Что же в итоге получилось, узнаете из текста.
Улучшения SEO в OkayCMS 2.2.0
- Появились шаблоны описаний для страниц с фильтрами. Можно задавать мета-теги для страниц:
- категория+бренд
- категория+свойство
- категория+определенное свойство
Для каждого свойства в новой версии доступны варианты слова (падежи и синонимы), которые позже можно использовать для заполнения метаданных фильтров.
Мы написали отдельную статью, посвященную данному функционалу.
- Чтобы перелинковка была более качественной, теперь можно делать свойство в товаре ссылкой на страницу фильтра <категория +это свойство>
- Изменилась работа ЧПУ-фильтра: теперь индексируется категория+одно значение фильтра, остальное – нет
- Для страниц, которые создаются через админпанель, появилась возможность задавать отдельный от названия страницы Н1 прямо в админке
- Sitemap.xml теперь более универсальный и сам создает пагинацию карт сайта, когда количество ссылок в нем превышает 50 000
- Улучшена микроразметка, добавлена разметка twittercard
- Настроен 301-й редирект со страниц с "/page-1" на основную страницу категории
- Убрано дублирование текста на страницах фильтров, сортировок и пагинации. Текст категории выводится после обновления только на основной странице категории
- В title при пагинации теперь автоматически подставляется номер страницы
- Для индексации теперь доступны только страницы фильтрации категория+бренд или категория+1 свойство.
Улучшения для посетителей сайта на OkayCMS 2.2.0
- Переверстана страница thank you page. Она стала более информативной для покупателя и правильной с точки зрения e-commerce
- В категориях появилась возможность отфильтровать по рекомендуемым товарам или товарам со скидкой
- Слева над фильтром теперь будут подкатегории
- Переделано отображение страницы ошибки 404
- Старая цена теперь лучше выделяется за счет того, что она перечеркнута
- Комментарии администратора также лучше выделяются среди комментариев обычных пользователей
- Сделано корректное определение варианта в наличии в Safari. Проблема была описана в теме на форуме
- Исправлена ошибка, когда в редких случаях после применения фильтра некорректно отображался каталог
- Исправлена верстка корзины для мобильных устройств
Улучшения в новой версии OkayCMS для администраторов сайта
- Теперь есть возможность создавать несколько меню и добавлять к пунктам свои ссылки
Можно добавлять и удалять подпункты меню, вставлять ссылки на текущий сайт (при этом они автоматически преобразуются в относительные) и на другие сайты, задать открытие в новой вкладке, просто перетянув ползунок.
Собственные меню можно выводить в любом месте шаблона.
- Вставлять скрипты стало проще
Мы переделали раздел SEO: теперь вам нужно только дать название скрипту, выбрать из выпадающего списка, куда его вставлять, добавить код в специальное поле и сохранить. Любой из них можно изменить или удалить.
- Сделан функционал добавления разных цветов к статусам заказа, чтобы легче ориентироваться в списке заказов. Реализовано на основе пожелания с форума
- Появился экспорт заказов в csv для дальнейшего импорта в сервисы рассылок e-mail, SMS и т.п. Выгружать можно по статусу, по меткам, по дате заказов
- В админпанель добавлен фильтр по необработанным комментариям, заказам обратного звонка и обращениям с формы обратной связи
- Сделана возможность искать информацию в комментариях и обратной связи. Поиск проходит по сообщениям, имени и e-mail
- Теперь можно выбрать количество отображаемых комментариев и сообщений обратной связи на одной странице
- Вместо стандартной капчи можно будет использовать reCAPTCHA или reCAPTCHA invisible, активировав нужную в настройках сайта
- Сделана возможность включать и отключать автоматическое одобрение комментариев
- Теперь добавить карту на страницу контактов можно просто вставкой iframe в специальное поле
- Заблокировано удаление или изменение URL для системных страниц
Это сделано для избежания ошибок, которые возникают вследствие изменения адреса или удаления страниц типа главная, бренды, 404 и т.п. Даже при попытке массового удаления страниц, появится уведомление.
- Сделано форматирование сообщений в техподдержке
- Сделан счетчик символов в meta title и description
- Добавлено отображение фильтров в админпанели на мобильных устройствах
- При экспорте категории для облегчения работы с файлом экспорта теперь выгружаются только свойства этой категории, а не все доступные
- Исправлены ошибки, возникающие при попытке изменить порядок категорий в товаре: порядок не менялся, не всплывала кнопка «Применить»
- Нельзя было задать порядок фото до сохранения товара. Теперь можно
- Также при изменении порядка фото не появлялась кнопка «Применить». Уже исправили
- Убрана в админпанели ненужная часть комментария админа
- Удалены редкоиспользуемые разделы "Яндекс.Метрика для сайта" и "Импорт/экспорт переводов"
- Поле "Активность" в разделе "Свойства" теперь называется более понятно – "В фильтре"
- При импорте товаров из 1С основное и дополнительные фото теперь обрабатываются более корректно.
Улучшения для разработчиков в OkayCMS 2.2.0
- Сделана возможность включать отдельную тему для админа
Когда она активирована, все действия в пунктах: «Файлы шаблонов», «Стили шаблонов», «Скрипты», «Изображения», «Переводы» – выполняются в теме для админа.
- Когда активирована тема для админа, в версию всех скриптов и стилей подставляется время. В теме ничего не будет кешироваться, т.к. она нужна для разработки
- Добавлена возможность сбросить кеш шаблона
- Для избежания проблем с некорректным наложением водяного знака теперь подключена библиотека обработки изображений gregwar
Новая библиотека gregwar имеет широкие возможности ресайза, обрезки и позиционирования картинок, позволяет обрабатывать изображение одной строкой, управлять кешированием и много новых крутых вещей.
Например, иногда нужно все картинки сделать одного размера (даже пренебречь небольшой частью изображения). Т.е. широкие и высокие привести к единому форм-фактору, как здесь:
Для этого в параметрах ресайза нужно указать 5-й и 6-й параметры {$c->image|resize:140:140:false:$config->resizedcategoriesdir:center:top}:
- 5-й параметр отвечает за положение результирующего изображения, если работали с широкой картинкой. Возможные значения: left, center, right
- 6-й параметр отвечает за положение результирующего изображения, если работали с высокой картинкой. Возможные значения: top, center, bottom
В отдельной статье мы детально расскажем, как работать с новой библиотекой.
- Сборка PHP библиотек gregwar, smarty, mobiledetect и phpmailer теперь осуществляется через composer
- Теперь можно задавать ресайз для баннеров
- Сделана возможность добавлять config/config.local.php, в котором можно переопределить любую директиву из обычного config-а
Это удобно, когда проект на Git, и часть config.php нужно добавить в игнор.
- В config/config.php сделана директива sql_debug = true, которая включает логирование нерабочих запросов
Она включена по умолчанию, но можно и выключить. Логи собираются в файл log/sql.log. Папка закрыта в htaccess, просматривать можно только по FTP.
- Улучшено определение пути к карте сайта для более легкой настройки действий по крону
- В раздел системной информации добавлен IP-адрес, с которого осуществляются curl-запросы
Нужно для корректной работы техподдержки, т.к. некоторые хостинги блокируют обращения с определенных IP. Для разблокировки нужно знать IP, теперь его удобно посмотреть в админке.
- Метод отправки e-mail админу перенесен из Callback.php в Notify.php
Исправление ошибок в новой версии OkayCMS
- Исправлены проблемы, проявлявшиеся при работе с MySQL версии 5.7
- Исправлена проблема с сохранением свойств, описанная на форуме в теме
- Исправлено несколько ошибок, связанных с переключением языка на странице 404
- Исправлена проблема с отображением каталога на планшетах с большим разрешением (>992px), при которой меню каталога не срабатывало по нажатию.
- Исправлена ситуация, когда картинка была доступна по разным URL
- Исправлена 500 ошибка при попытке открыть несуществующее изображение
- При редактировании заказа, если поменять способ доставки "Оплачивается отдельно" на другой, не считалась стоимость. Сейчас проблему устранили. Описание есть на форуме
- Исправлена ошибка, когда при клике на плюсик в корзине нельзя было добавить больше 50 товаров в заказ
- В текущей версии можно удалить изображение в баннере (раньше нужно было только заменять его на другое)
- Оптимизировано удаление валют из БД при включенной мультиязычности сайта
- Оптимизирован запрос search_products.php
- Убраны дублирующиеся элементы в верстке админпанели
- Исправлена проблема, при которой пароль для базы данных со спецсимволами не принимался системой
- Исправлена работа сортировки по цене после применения фильтра по цене
- Убраны ссылки на страницы с 302-м редиректом, которые появлялись при включении более чем одной валюты на сайте
- Исправлена ошибка при сохранении JS в админке
- Исправлена работа кнопки "Печать заказа". Больше не появляется ошибка 500
- Раньше к комментариям на странице грузились все ответы на все возможные комментарии
Мы оптимизировали код, и теперь для 20 комментариев на странице загрузятся только их ответы.
- Исправили баг в "Обратной связи"
Если одобрить фидбек, но не написать ответ, то его больше нельзя будет написать. Сделали так, что ответов можно писать любое количество.
- Исправили баг в подсчете кол-ва заказов при использовании фильтра по дате
Раньше после фильтрации всегда показывало 0 заказов. Сейчас подсчет корректный.
- Исправлена ситуация, когда на второй странице пагинации в админпанели не отображались ответы на комментарии
- Исправлено несоответствие название поля в админке с его содержанием
Как видите, теперь OkayCMS стала еще красивее с подправленной версткой, глобально изменился SEO-раздел, в системе сделали много новых удобностей и учли ваши замечания. Продолжайте держать с нами обратную связь – мы уже планируем следующую версию.
выдало ошибку и таблицы до конца не импортировались, все остановилось на табл. ok_groups."
Ошибка в том, что видимо у пользователя mysql под которым выполнялся запрос не было прав на создание триггера.
Мое решение - https://forum.okay-cms.com/viewtopic.php?f=10&t=370
выдало ошибку и таблицы до конца не импортировались, все остановилось на табл. ok_groups.
Ошибка:
-----------------------
SQL запрос:
CREATE TRIGGER `categories_date_create` BEFORE INSERT ON `ok_categories` FOR EACH ROW
SET NEW.`created` = NOW()
Ответ MySQL: Документация
#1419 - You do not have the SUPER privilege and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)
Надоедает искать через Ctrl+F, особенно если нужно ещё постоянно раскрывать подкатегории, пришлось самому допиливать для некоторых страниц поиск, но считаю что и другим админам также будет полезен поиск по этим разделам, поэтому сделайте ПОИСК по этим разделам поумолчанию.
2. В "Статистике продаж" и "Категоризация продаж" - то что есть сортировка с помощью календаря, это здорово, но добавьте ещё готовые зарезервированные фильтры "Сегодня", "Вчера", "За последние 7 дней", "За последние 30 дней", "За эту неделю", "За прошлую неделю", "За этот месяц", "За прошлый месяц", "За этот квартал", "За прошлый квартал", "За этот год", "За прошлый год", и т.д.
3. "Синонимы/склонения свойства" - если войти в карточку товара и сразу начать добавлять (нажать) "Добавить склонение" - после добавления склонений, не появляется кнопка "Применить", (появляется только после сохранения и редактирования склонений.
4. "Комментарии", "Обратная связь", "Обратный звонок" - добавьте фильтр аналогично пункту №2 или хотя бы ФИЛЬТР по КАЛЕНДАРЮ, это поможет как в аналитике, так и визуально убрать со страницы лишние данные, при обработке заявок обратной связи.
Максим, по поводу ваших замечаний.
1. По этому пункту можно поспорить, так как не все отображаемые товары обладают данным свойством. Условно говоря, администратор магазина может писать что гарантия: есть, а что гарантии нет, может не писать в товарах. И тогда при фильтрации между всеми товарами и товарами у которых есть гарантия будет разница. Да и если выключать такие варианты из фильтра, то уменьшится кол-во посадочных страниц.
2. Баг который вы описали исправим в ближайшей версии. По поводу непонятности функционала - мы это проясним в ближайших статьях. Раздел внизу отображает тему только для определенных админов. Так, разработчик вносит изменения в тему и видит её, а пользователи магазина видят старую тему, а не ту на которой ведутся работы.
3. Да, сами удивляемся как всё тестирование прошло, уже исправляем.
4. Согласны с вами
5. Не наблюдали этот баг, не получается его воспроизвести
6. Да, там не аякс обработчик, так и должно быть.
А то дизайн стал современный, а промо-изображения товаров устарели!
С вашим подходом к разработке, нужно серьезно озадачиться созданием удобной среды для всех пользователей, желающих стать тестировщиками, с бонусами и отчетами по всем входящим заявкам.
Первый взгляд на версию 2.2.0:
1. В фильтре остаются бесполезные единичные свойства. Нет разницы между выбором "Все" и оставшимся последним свойством, потому что все отображаемые товары этим свойством обладают. Так вы только путаете посетителя сайта и, наверняка, давно запутались сами. Если бы каждый пункт фильтра отображал напротив количество товаров, которые он покажет, то было бы проще не оставлять бесполезные свойства на странице.
2. Кнопка "Установить для админа" делает тему текущей, в некоторых случаях, а кнопка "Выбрать" устанавливает тему "Для админа". Покликайте эти кнопки несколько раз и вы увидите ошибку. Темы должно быть 2.
Там же внизу раздел "Ограничить для админов" - вообще не понятно что он делает, к чему там находится и что ограничивает. И ограничивает ли для выбранных? А что тогда делает флажок "Все админы"? Одни вопросы.
Переводы у "Темы для админа" не изменяются, хотя в заголовке страницы Переводов отображается как раз тема для админа, которая должна изменяться.
3. Ключи для reCAPTCHA invisible не сохраняются => функция, о которой вы написали в статье, не работает.
4. Новые разделы в том же SEO появились, а при создании менеджера и распределении прав, этих разделов нет. Возможно, стоит создать документацию для разработчиков к своей CMS, где были бы отображены все зависимости.
5. Активность языка не влияет на доступность ссылки /en /ua и других, на его наличие в шапке админ панели. В целом, по системе, очень много флажков активности, которые на деле не работают, либо работают не полностью.
Такая же ситуация с удалением. Удаляйте что-нибудь и смотрите на таблицы в phpMyAdmin, в половине случаев останется информация в таблицах lang_, иногда и еще где-нибудь.
Вот не очищаемые таблицы, которые мне удалось обнаружить, особо не напрягаясь: lang_blog, lang_currencies, lang_products.
6. Сумма продаж, при создании заказа из админки, не считается, появляется только после нажатия кнопки "Применить".
Какие у вас проблемы возникают при скачивании новой версии?