Staffing CMS · interne besluitvorming · MMXXVI

Vertaal minder. Beheer scherper.

Een Nederlandse basispagina met een losse vertaalresource geeft controle per veld, duidelijke publicatieregels en een eenvoudiger migratiepad.

I. Architectuur

De Nederlandse pagina is de basis. Vertalingen vormen een laag.

General, components en SEO worden eenmalig beheerd in het Nederlands. Engels, Frans en Pools worden geen aparte pagina's, maar losse taalwaarden bovenop dezelfde contentstructuur.

01 Eén bron

De Nederlandse pagina is leidend. Aanpassingen gebeuren daar, in één editorflow.

02 Losse laag

Vertalingen zitten in een eigen Translations resource, niet in componentkopieen.

03 Per string

Alleen gemapte velden worden vertaald: heading, paragraph, button_label, SEO.

04 Alleen nieuw

Bij elke save verschijnen alleen ontbrekende of gewijzigde strings in de wachtrij.

II. Kerncijfer
1×

Nederlandse pagina beheren. Meerdere talen beoordelen, publiceren, monitoren.

III. Status per taal

Bovenaan de editpagina: per taal een duidelijke status.

Drie hoofdkleuren markeren waar de vertaling staat. Een vierde waarschuwt als de Nederlandse bron is gewijzigd.

01

Niet vertaald

Er is een Nederlandse bronwaarde, maar nog geen taalwaarde voor deze taal.

02

Vertaald, niet gecontroleerd

Er is een AI- of handmatige vertaling, maar nog geen menselijke controle.

03

Goedgekeurd

De taalwaarde is gecontroleerd en mag volgens de publicatieregel mee naar live.

04

Verouderd

De Nederlandse bron is gewijzigd nadat de vertaling was goedgekeurd.

IV. Mapping

Alleen gemapte velden. Niet elke string is tekst.

De scanner pakt heading, paragraph, button_label, SEO title, SEO description en slug. Technische velden en assets blijven buiten de queue.

Scannen
Niet scannen
Waarom
heading, paragraph, button_label
image_id, icon, layout
Bezoekerscopy wel; assets en layout niet.
seo_title, seo_description, slug
sort_order, css_class, route_name
SEO en URL zijn taalervaring; technische keys blijven stabiel.
V. Reviewmodel
"

Neem contact op → Contact us → goedgekeurd.

Per taal klik je een veld aan, ziet bron en vertaling naast elkaar, past aan en keurt goed.

VI. Bij een update

Alleen ontbrekende of nieuwe strings. Niet de hele pagina opnieuw.

Een bestaande live pagina krijgt 1 nieuw component met 3 teksten. De vertaalmodal toont die 3 strings, niet alle bestaande content.

Voor de update

12 componenten
47 strings
alles goedgekeurd

Bestaande vertalingen raken niets. Ze blijven op groen staan en zijn niet zichtbaar in de wachtrij.

Na 1 nieuw component

+ 1 component
+ 3 strings
3 in de wachtrij

Alleen de drie nieuwe strings wachten op review. Dat is de vertaalflow per save.

VII. Conceptgedrag

Niet elke save betekent een nieuwe vertaalronde.

Een nieuwe About us-pagina wordt tien keer aangepast voor publicatie. Al die tien keer vertalen kost API-quota en produceert ruis.

Conceptstatus detecteren

Pagina in concept of draft slaat de vertaalronde over. Er wordt gescand, maar niet vertaald.

Vertalen op trigger

Expliciete knop "Vertaal nu" of automatisch bij de eerste publicatie. Niet bij elke save.

Eén keer per publicatie

Bij livegang wordt alles in één keer vertaald. Geen API-quota verspild aan halve versies.

VIII. Eén resource

Translations. Niet verspreid, niet impliciet.

Een aparte Translations-pagina in het CMS groepeert alle strings per taal en per status. Filters op 'wacht op review' en 'nog niet vertaald'.

Filter · taal

EN · FR · PL — alleen de strings voor de gekozen taal, met telling per status.

Filter · status

Niet vertaald · wacht op review · goedgekeurd · verouderd. Klik door naar de bron.

Zoeken

Op sleutel, paginapad of component. Eén centrale plek voor al het vertaalwerk.

IX. Open besluit

Twee vragen die de publicatie en URL's raken.

Publicatieregel

Groen verplicht, of is oranje al genoeg?

Moet elke actieve taal op groen staan voor live? Of mag een AI-vertaling op oranje al mee?

Slugs

/nl/over-ons
/en/about-us

Slug meenemen als vertaalbaar veld, of technisch houden zoals route_name en component_key?

X. Open besluit

Drie technische vragen die de implementatie vormgeven.

Technische velden

Interne routes, image IDs, settings-URL's en component keys. Buiten de vertaalqueue, zonder uitzondering.

Mapping per component

Welke velden per componenttype. Whitelist, niet blacklist. Default is niet scannen.

Caching

Database + Laravel cache is voldoende. JSON per taal en pagina pas als er druk ontstaat.

Besluit

Vandaag zes keuzes. Daarna bouwen.

NL basis · losse vertaallaag · taalstatussen · review per veld · alleen nieuw · conceptgedrag. Open punten op 10 en 11 in een tweede ronde.

1 / 3
← / → · scroll · swipe