Acorn Prettify: наследникът на Soil и посоката на Roots към Acorn екосистемата
В Roots екосистемата има едно постоянно желание: WordPress да изглежда и да се държи малко по-малко „исторически“ и малко повече като модерен framework, без да се губи съвместимост. Точно в тази ниша години наред стоеше Soil — плъгинът, който изглаждаше дребните, но досадни ръбове на WordPress. Сега Roots пускат Acorn Prettify като негов наследник и това е ясен сигнал накъде вървят: Acorn навсякъде.
Какво е Acorn Prettify и защо изобщо се появява
Acorn Prettify е пакет (инсталира се през Composer), който събира и поддържа основните „quality of life“ функции, познати от Soil, но в контекст на Acorn — Laravel-подобния слой в Roots света. Ако използваш Sage, вероятно вече мислиш в посока на service providers, конфигурационни файлове и по-структурирана организация на кода — Prettify се вписва точно там.
Историческият контекст е полезен: Soil е бил част от Roots starter theme още в периода 2011–2014. По-късно, с Roots v7, е отделен като самостоятелен плъгин. Днес Roots казват директно: фокусът е върху Acorn и растящата му пакетна екосистема, затова и наследникът вече е Acorn пакет, а не отделен плъгин в същия стил.
Какви функции включва (поддържани и занапред)
Acorn Prettify включва ключовите неща от Soil, които Roots планират да поддържат активно. Това са подобрения, които обикновено не „продават“ проект, но спестяват време, технически дълг и малки UX странности.
- Почистване на markup-а на WordPress – по-изчистен HTML изход, по-малко излишни елементи/атрибути и по-предвидим output.
- Nice search – подобрения в поведението на търсенето, така че резултатите да са по-интуитивни за потребителя.
- Relative URLs – опция за относителни URL адреси; важно: в Acorn Prettify те са изключени по подразбиране.
Детайл, който лесно се пропуска
Функцията за relative URLs вече не е „включена по подразбиране“. Ако разчиташ на това за миграции между домейни/среда (staging → production), провери конфигурацията след инсталация.
Миграция от Soil към Acorn Prettify (Composer-first)
Roots са го направили максимално директно: махаш Soil зависимостта и добавяш новия пакет. Ако проектът ти е стандартен Roots/Sage сетъп и управляваш зависимостите с Composer, това е работа за минути.
1) Премахни Soil
composer remove roots/soil2) Инсталирай Acorn Prettify
composer require roots/acorn-prettify3) Ако си на Sage: почисти theme support настройките за Soil
При Sage проектите често има add_theme_support флагове/опции, които са били добавяни за Soil. След миграцията те вече няма да са ти нужни, така че ги премахни от app/setup.php. Roots дават пример с конкретен PR в Sage репото.
Примерът: https://github.com/roots/sage/pull/3172/files
Конфигурация: как се включват/настройват функциите
За разлика от класическия плъгин подход с UI настройки, тук контролът е през config файл — напълно логично за Acorn. Функциите на Acorn Prettify се управляват чрез config/prettify.php.
Ако искаш да промениш default-ите, публикуваш конфигурацията към проекта и редактираш локално.
wp acorn vendor:publish --tag=prettify-configПрактичен съвет при ъпгрейд
След vendor:publish третирай config/prettify.php като част от contract-а на проекта: версионирай го, и при бъдещи ъпдейти на пакета преглеждай дали няма нови опции или промени в default поведение.
Какво означава това за Roots/Sage проектите
Най-важното не е самият списък с функции (макар че са полезни), а посоката: Roots залагат на Acorn като основа и очакват пакетната екосистема около него да расте. Това означава повече функционалности като „пакети“, повече конфигурация през код и по-малко „монолитни“ плъгин решения.
Ако вече си в Acorn/Sage вселената, Acorn Prettify изглежда като естествено продължение на начина, по който така или иначе организираш проекта си: зависимости през Composer, настройки в config/, и ясно разделяне на отговорностите.
Накратко
- Acorn Prettify е наследникът на Soil и идва като Acorn пакет.
- Включва cleanup на WordPress markup, nice search и relative URLs (изключени по подразбиране).
- Миграцията е основно
composer remove+composer require, плюс почистване наadd_theme_supportв Sage. - Конфигурацията се управлява през
config/prettify.php, публикувана сwp acorn vendor:publish.
Hannah Turing
WordPress разработчик и технически писател в HelloWP. Помагам на разработчиците да създават по-добри уебсайтове с модерни инструменти като Laravel, Tailwind CSS и екосистемата WordPress. Страстна към чистия код и опита на разработчика.
Всички публикацииОще от Hannah Turing
Критична уязвимост в Modular DS за WordPress се експлоатира активно: какво да провериш и как да се защитиш
Автоматизация на WordPress форми с n8n + WPForms: от подадена форма до CRM/Sheets без ръчна работа
Astro се присъединява към Cloudflare: какво се променя за framework-а и какво печелят разработчиците