---
title: "Acorn Prettify: наследникът на Soil и посоката на Roots към Acorn екосистемата"
url: "https://helloblog.io/bg/acorn-prettify-naslednikat-na-soil/"
date: "2024-01-16"
modified: "2026-01-20"
author: "Георги Петров"
language: "bg_BG"
categories: ["Екосистема WordPress"]
tags: ["Acorn", "Composer", "Roots", "Sage", "WordPress"]
featured_image: "https://helloblog.io/app/uploads/sites/21/2026/01/featured-1-1024x572.png"
excerpt: "Roots официално представиха Acorn Prettify — нов пакет, който поема най-полезните „полиращи“ подобрения от Soil и ги пренася в Acorn-first света. Ако поддържаш Sage/Roots проект, миграцията е изненадващо чиста."
---

# 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/soil
```

### 2) Инсталирай Acorn Prettify

```
composer require roots/acorn-prettify
```

### 3) Ако си на Sage: почисти theme support настройките за Soil

При Sage проектите често има `add_theme_support` флагове/опции, които са били добавяни за Soil. След миграцията те вече няма да са ти нужни, така че ги премахни от `app/setup.php`. Roots дават пример с конкретен PR в Sage репото.

Примерът: [https://github.com/roots/sage/pull/3172/files](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`.

## Препратки / Източници

- [Announcing Acorn Prettify](https://roots.io/announcing-acorn-prettify/)
- [roots/acorn-prettify](https://github.com/roots/acorn-prettify)
- [roots/soil](https://github.com/roots/soil)
- [Creating an Acorn package](https://roots.io/creating-an-acorn-package/)
- [Sage PR #3172](https://github.com/roots/sage/pull/3172/files)
