Последние пару неделю работаю над блогом. До этого я писал, что он работает на Nuxt.js + Wordpress. И до начала октября все было именно так. Nuxt.js на фронте, бэкенд (если можно так выразится) на Wordpress. И утверждал и продолжаю утверждать, что панель управления Wordpress одна из самых удобных.
В целом, меня всё устраивало. Но были нюансы, которые очень хотелось исправить. Например, мне ужасно не нравится версионирование записей в Wordpress. Пока пишешь один пост, получаешь множество сохранений в черновик. Я знаю для чего это, но мне это не нравится.
Еще один момент — система плагинов и технически сложная кастомизация. Чтобы что-то сделать в админке, например, добавить кастомные поля к посту, нужно ставить плагин. Все это здорово, но кажется, что ты не владеешь продуктом. Если завтра плагин обновится и с ним будет проблема, это может поломать сайт. Так совпало, но спустя неделю после переезда у Wordpress и wpengine был спор о правах и отчислениях. Дошло до того, что команда Wordpress выпустила свой плагин Secure Custom Fields.
Доработка темы для Wordpress в 2024-м уже не кажется простой задачей. Темы стали сложнее, в них куча логики и разбираться, если честно, нет ни времени, ни желания.
Так что с недавнего времени я переехал на Ruby on Rails. Это интересный опыт. С одной стороны, хотелось посмотреть версию 7.2 в работе. С другой, хотелось быстренько сделать проект так, как хочется внутри, без лишнего усложнения. Без проблем и экспериментов не обошлось.
Попробовал Active Storage, понял что мне не нравится это решение и откатил всё обратно. В итоге, решил, что картинки я буду заливать на CloudFire при создании поста, а удалять их буду вручную. Решение не совсем идеальное, но оно работает и на текущий момент меня устраивает.
Вообще старался сделать всё как можно проще. После админки Wordpress это сильно заметно 😀
Из функционала: подписка на RSS, оптимизация и конвертация картинок в webp на стороне рельс, а не на CloudFire, собственный сборщик статистики. Не люблю Google Analytics, а большинство других аналитик платные. Мне же интересно общее количество посещений, страны и устройства. Нет так уж много, согласитесь. Ранее я использовал SimpleAnalytics. Отличный сервис, но на этот раз решил реализовать свою версию. Ну и конечно же самый настоящий серверный рендеринг приготовленный на самом настоящем сервере. Без костылей и хаков 😀.
В планах есть еще идеи по улучшению и доработки. Например, email рассылка, конвертация :) => 😀, хранение черновика заметки в localStorage, кросс-постинг в телеграм канал и прочие нужные и ненужные штуки. В общем, всё то, что неизбежно ведет систему к усложнению.