С наступающим!
Готова новая Эгея 2.8 бета (сборка v3333). Не обновляйтесь на живых сайтах, если только вы не суперпродвинутый технарь, обложившийся бекапами со всех сторон. Не забывайте, что бета — это очень страшно.
В конце заметки — ссылка на дистрибутив. А пока расскажу вам, что нового.
Комментарии через соцсети
Раньше оставить комментарий мог любой, просто указав что-то, напоминающее почту. Теперь ещё можно зайти через Твиттер или Фейсбук:
Если хотите, можно потребовать этого, поставив галочку в настройке:
Тогда просто оставив почту комментировать уже будет нельзя.
Для того, чтобы на ваш сайт можно было войти через соцсеть, нужно зарегистрировать его как «приложение» в этой соцсети, получить всякие ключи. Это страшный геморрой. В случае с Твиттером нужно месяца два ждать, пока они тебя проверят и примут в клуб. В случае в Фейсбуком хрен расставишь все сто галочек правильно в настройке.
Чтобы не подвергать пользователей Эгеи таким пыткам, я придумал промежуточный сервер для авторизации. Попробуйте оставить комментарий к этой заметке, зайдя через Фейсбук. Вместо того, чтобы сразу идти в Фейсбук, вы сначала заглянете на сайт Эгеи:
С одной стороны, такой вход в два прыжка может напрягать комментаторов. С другой, владельцам блогов на Эгее не нужно думать про ключи. Кроме того, если вы один раз представитесь сайту Эгеи через Фейсбук, то в следующий раз он уже будет узнавать вас сам.
Если вы как автор блога всё-таки хотите заморочиться с ключами, чтобы комментаторы представлялись вам напрямую, а не через сайт Эгеи, так тоже можно. Скопируйте из system/gips/ в user/gips/ джейсоновские файлы настройки соцсетей и пропишите там свои ключи.
С разработкой этой фичи помогли Иван Щолоков и Виктор Корейша, с дизайном помог Иван Звягин.
Улучшения в антиспаме
Некоторые пользователи Эгеи жалуются на спам в комментариях. Проблема с этим в том, что у меня спама в комментариях нет, поэтому мне очень трудно как-то это исследовать. Это странно, ведь по идее я мог бы стать одной из основных мишеней. Но вот не стал.
Понятно, что в новой версии вы сможете потребовать входа через соцсети, и это должно снять проблему спама.
Но даже если вы оставите анонимные комментари (когда просто указываешь почту), спама должно стать меньше. Виктор Корейша придумал и реализовал несколько фокусов, которые по идее позволят лучше определять роботов.
Я уже знаю, что иногда случаются ложные срабатывания — простите, мы поглядим, что подкрутить. Даже если Эгея примет нормальный комментарий за спам, она его не потеряет, а покажет комментатору, чтобы он по крайней мере смог скопировать то, что написал, и отправить автору другими средствами.
Призываю всех, кто страдал от спама, попробовать новую версию и сказать мне, стало ли легче жить.
Запланированные заметки (для платных пользователей)
Если вы платный пользователь, теперь сможете запланировать заметку. Для этого рядом с кнопкой «Опубликовать» появилась кнопка с календариком:
Если в неё нажать, можно указать дату и время, когда выйдёт заметка:
Как всегда с Эгеей, чтобы это работало не нужно ничего дополнительно настраивать, никакой там крон или ещё какую байду. Потому что в момент публикации на сервере ничего не должно происходить. Просто на все запросы, поступившие после часа X, Эгея будет отвечать так, как будто заметка уже есть. Разумеется, Эгея сама управляет всеми кешами так, чтобы они устарели в нужное время. Уведомление о новой заметке отправится в «Блоги», как только первый человек её увидит.
Новая тема оформления
Называется «Акут», чистенькая:
В большинстве тем оформления случились наноулучшения. В частности, аудиоплеер теперь нормально выглядит на всех темах с тёмным фоном. Это «Холм»:
Эмодзи
Теперь Эгея поддерживает эмодзи 🎉
Казалось бы, что тут поддерживать, это ж просто символ? Кодировку УТФ-8 Эгея поддерживает ещё с версии 2.0.
Но проблема в том, что в базе данных Майэскуэль, которую использует Эгея, первые реализации УТФ-8 были кривыми и не умели хранить нужные для эмодзей четырёхбайтные символы. А когда научились, для обратной совместимости это стало называться «кодировкой» utf8mb4. Я об этом понятия не имел, потому что в гробу видал эмодзи и использую их только, когда отвечаю на сообщения с часов.
Но Женя Степанищев и понятие имел, и от неподдержки эмодзей в Эгее страдал. Поэтому он научил Эгею использовать именно эту utf8mb4 на достаточно новых Майэскуэлях. При обновлении база данных должна автоматически сконвертироваться, и Эмодзи должны заработать. Если не заработают, видимо, у вас очень древняя версия Майэскуэля, где в принципе нет понятия utf8mb4.
Остальное
Сбылись мечты народные! Ссылка «7 комментариев» под заметкой теперь ведёт сразу туда, где начинаются комментарии, а не в начало страницы с заметкой.
Теперь под каждой заметкой показывает, сколько людей её видели:
Пришлось придумать хитрость, чтобы кешировать всё, кроме этих чисел.
На странице 404 теперь показываются ссылки на популярные заметки, чтобы хоть куда-то можно было пойти:
Популярные теперь считаются по количеству увидевших, а не хитов.
Если в заметке несколько песен, они больше не играют сами по себе по порядку — от этого было больше проблем, чем пользы. Если вы хотите, чтобы играли, придётся вручную завернуть их в div.jouele-playlist.
В окне входа можно сказать, что ты забыл пароль:
Эгея может не знать почтовый адрес автора, поэтому ссылку для сброса пароля она ещё и сохраняет в файл на сервере, о чём говорит (я исхожу из того, что у автора есть доступ к серверу в любом случае). Но если она знает почту, то она её спросит:
Если ввести ту же, что Эгея знает, то туда тоже отправится ссылка для сброса пароля.
Пофиксились некоторые баги с масштабированием картинок и на странице со списком тегов. Ещё исправлена группа багов, из-за которых нельзя было назвать заметку или тег «0». Если вы не любите ПХП, то у вас отличный повод для злорадства! Ещё добавились небольшие оптимизации там и тут (v3276, v3278, v3297).
Ещё исправлена ошибка, из-за которой в старых версиях в базе данных могли появиться лишние индексы. При обновлении до 2.8 эти лишние индексы будут удалены.
Ещё после выхода версии 2.7 выходили небольшие апдейты; версия 2.8 включает все фиксы из них:
Технические детали
Минимальная версия ПХП поднялась с 5.3 до 5.4. Если у вас 5.3, новая Эгея не будет работать вообще никак.
Если Майэскуэль не поддерживает базы данных типа InnoDB, Эгея больше не плачет, но и продвинутый поиск не работает (работает старый тупой поиск, который не умеет склонять слова и непонятно сортирует результаты).
Жуэль, Роза и Нисден обновились.
Эгея теперь генерирует sitemap.xml.
Как попробовать и что тестировать
Ещё раз скажу, что не рекомендую пока обновляться на живых сайтах. Как обновиться:
- Отредактировать и сохранить любую заметку (на всякий случай, это гарантирует, что сделается актуальный бекап базы).
- Забекапить всю папку на сервере, включая бекапы базы данных, которые лежат в /user/backups/.
- Заменить файл .htaccess в корне, папку /system/ и все подпапки в /themes/ (то есть убрать старые, положить новые, а не дозалить в старые новые файлы).
Если вы делали свою тему оформления, посмотрите, что изменилось в комплектной, и аккуратно повторите эти изменения у себя.
Что тестировать:
- сам процесс обновления, чтобы не вылезло никаких ошибок про базу данных;
- эмодзи в заметках и комментариях;
- комментарии через соцсети;
- антиспам;
- планирование заметок;
- темы оформления;
- восстановление забытого пароля.
Ссылка: e2_distr_v3333.zip e2_distr_v3354.zip Релиз.
Пишите, чё как.
Если вы пользуетесь платной версией и хотите бету платной 2.8, напишите мне.
О предыдущей версии: 2.7