Всички публикации

От разработката на Level8

Пълният блог зад новата визия: преходът на Level8 към SSR.

При обновяването на собствения ни сайт красивият preview не беше достатъчен. Трябваше да запазим 121 публични статии с пълното им съдържание и да върнем основния текст още в първия HTML от сървъра. Ето как проверихме това в локалната среда на Level8.

Level8

Оригинална редакционна бележка на Level8 за работния подход.

Пропускът беше зад видимата страница

Новата визия първоначално работеше като отделен React preview. Браузърът можеше да отвори адрес и да покаже съдържание, но основният текст не идваше в първоначалния HTML. Променено заглавие в браузъра не отстранява този пропуск.

За блога имаше и второ изискване: редизайнът да не превърне пълните статии в карти с откъс и външен линк. Искахме да останат текстът, изображенията, аудиото и източниците, когато ги има, както и съдържанието за навигация в дългите материали.

Един публичен източник за страниците и RSS

Свързахме списъка, страниците на статиите и RSS с общ четец на публикуваните записи в CMS. Статията получава пълното съдържание. Филтрите, търсенето и страниците на списъка използват същата граница: непубликуван запис не трябва да бъде публичен.

Показваният HTML се обработва преди изобразяване: премахват се изпълними вмъквания и опасни атрибути, а позволеното съдържание се запазва. Навигацията по заглавия се извежда от текста. Точни повторения на въпрос и отговор се премахват, но различни отговори не се сливат автоматично.

При проблем с CMS API и RSS връщат грешка. Не заменят тихо текущото съдържание със старо копие. Това има значение особено след редакция или сваляне на публикация.

Защо първоначалното копие се зарежда само веднъж

За чистото локално стартиране използвахме копие на 121 публични статии, изнесено на 19 септември 2026 г. То е начална основа за тестовата база. Служебен запис отбелязва, че зареждането е изпълнено; след това публичните страници четат CMS.

При първото зареждане съществуващ запис със същия идентификатор или адрес се запазва. Повторното стартиране не възстановява изтрита статия, не публикува отново свалена и не презаписва редакция. Без това условие един удобен пакет за преглед би могъл да отменя решенията на редактора.

Какво променихме при SSR

Преместихме представянето в действителните Next маршрути на Level8. Сървърът зарежда публичните данни и ги подава на страницата. Заглавието, основният текст, навигацията по раздели и метаданните се създават от едни и същи данни. Браузърът добавя интерактивността към вече подготвеното съдържание.

Това позволи да проверим първия HTTP отговор, вместо да приемем, че видимото след зареждане доказва всичко. Липсваща или скрита статия получава състояние „не е намерена“. Недостъпната CMS има отделно състояние за грешка, за да не представяме временния проблем като изтрита публикация.

Проверките обхванаха и редакторските действия

В изолирана локална база проверките проследиха публикуване, редакция, сваляне и изтриване. Промените се отразиха в публичния списък, детайла и RSS според предназначението им. Повторното първоначално зареждане не върна сваленото и изтритото съдържание.

Отделните SSR проверки потвърдиха пълно съдържание, метаданни, филтри и странициране без браузърни глобални обекти. HTTP проверката на 19 основни адреса установи заглавие, едно H1 и основно съдържание в началния HTML. При браузърния преглед на една дълга CMS статия проверихме изображението, текста, навигацията и аудио контрола, включително на ширина 390 пиксела.

Запазено съдържание не означава проверени твърдения

Пренасянето на 121 статии не е фактологичен преглед на всичките им твърдения. Не сме прегледали ръчно всяка статия във всеки браузър. Проверките са на собствения Level8 проект в локална среда със симулирани доставчици, без външни клиентски внедрявания или измерен бизнес резултат. Production публикацията и измерванията в реалната среда остават отделни.

При редизайн поискайте две демонстрации: пълна стара статия в новата визия и редакторско действие, което веднага се отразява в публичното съдържание. После проверете какво връща самият адрес преди браузърът да изпълни JavaScript. Така приемането включва и запазената работа, и начина, по който тя достига до читателя.

Следваща стъпка по темата

Предстои промяна на сайт с натрупан архив?

Опишете текущия сайт, съдържанието за запазване и проблема, който искате да решите. Това дава основа за оценка на конкретна поправка или по-голям обхват.

Вижте поправките по съществуващ сайт

Следете публикациите.

Следващото полезно четиво.

Нови публикации от Level8 по имейл. Потвърждавате с личен линк и можете да се отпишете от всяко писмо.

Или следвайте RSS