[Sugester V2](https://pomoc.sugester2.pl.md) / [CMS](https://pomoc.sugester2.pl/cms-1.md)

# [Migracja plików z Siteor do CMS](https://pomoc.sugester2.pl/migracja-plikow-z-siteor-do-cms-qznyd92c.md)

## Cel

Przeniesienie plików (obrazków) z zewnętrznego hostingu Siteor (`fs.siteor.com`) do własnego CMS (`/cms/assets`).

## Kiedy stosować

- Gdy chcesz uniezależnić się od zewnętrznego serwisu
- Gdy potrzebujesz pełnej kontroli nad plikami
- Gdy chcesz mieć wszystkie zasoby w jednym miejscu

## Jak to zrobić

### 1. Upload pliku do CMS

```bash
curl -X POST "https://twoja-domena.com/cms/assets.json?api_token=TOKEN" \
  -F "asset[file]=@plik.png" \
  -F "asset[kind]=image"
```

**Dozwolone typy (kind):**
- `image` - dla PNG, JPG, SVG
- `js` - dla JavaScript
- `css` - dla stylów
- `zip` - dla archiwów

### 2. Nowy URL pliku

Po uploadzie plik jest dostępny pod adresem:
```
https://twoja-domena.com/cms/assets/{ID}/view
```

### 3. Aktualizacja treści

Zamień stare URL-e w stronach i paragrafach:

```bash
# Pobierz stronę
curl "https://twoja-domena.com/cms/pages/{ID}.json?api_token=TOKEN"

# Zaktualizuj content z nowymi URL-ami
curl -X PUT "https://twoja-domena.com/cms/pages/{ID}.json?api_token=TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"page": {"content": "...nowy content..."}}'
```

## Przykład: MojaFirma/MojaFirma

W styczniu 2026 przeprowadzono migrację 35 plików z `fs.siteor.com` do `app.mojafirma.pl/cms/assets`.

**Statystyki:**
- 35 plików przeniesionych (asset ID: 1017-1051)
- 150 elementów CMS zaktualizowanych (40 stron + 110 paragrafów)
- Weryfikacja: 0 pozostałych starych URL-i

**Wzorzec mapowania:**
```
Stary: https://fs.siteor.com/rudykot/files/elf/02_Pogoda.png
Nowy:  https://app.mojafirma.pl/cms/assets/1017/view
```

## Automatyzacja

Dla dużej liczby plików warto napisać skrypt Ruby/Python który:
1. Pobiera listę stron/paragrafów
2. Wyszukuje stare URL-e w content
3. Zamienia na nowe
4. Aktualizuje przez API